包子凑数

类似完全背包求方案数,再加上点数论知识,裴蜀定理。

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
const int N=300000;
bool  f[N];
int a[120];
signed main()
{
	ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
	int n,n0=0,n1=0; cin>>n;
	f[0]=1;
	int g;
	for(int i=1;i<=n;i++) cin>>a[i];
	g=a[1];
	for(int i=1;i<=n;i++)
	{
		g=__gcd(g,a[i]);
		for(int j=a[i];j<N;j++)
		f[j]|=f[j-a[i]];
	}
	int flag=0,cnt=0;
	for(int i=1;i<N;i++)
	if(!f[i]) 
	cnt++;
	if(g!=1){
		cout<<"INF";
		return 0;
	}
     cout<<cnt;
	return 0;
}
相关推荐
nurupo1234 分钟前
C++学习路线(二十五)
c++·学习·算法
yava_free34 分钟前
OpenMV的无人驾驶智能小车模拟系统
c语言·c++·stm32
铭正39 分钟前
C++多线程应用
c++·多线程
学习编程之路1 小时前
深入理解C++ Lambda表达式:语法、用法与原理及其包装器的使用
开发语言·c++
qing_0406032 小时前
C++——string的模拟实现(上)
开发语言·c++·string
我不会JAVA!3 小时前
排序算法(3) C++
c++·算法·排序算法
Ddddddd_1587 小时前
C++ | Leetcode C++题解之第504题七进制数
c++·leetcode·题解
J_z_Yang7 小时前
LeetCode 202 - 快乐数
c++·算法·leetcode
Y.O.U..10 小时前
STL学习-容器适配器
开发语言·c++·学习·stl·1024程序员节
lihao lihao10 小时前
C++stack和queue的模拟实现
开发语言·c++