帮帮!
  • 板块P1658 购物
  • 楼主jky1003
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/8/5 10:37
  • 上次更新2024/8/5 11:23:36
查看原帖
帮帮!
1090144
jky1003楼主2024/8/5 10:37
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int n,m,a[N],t[N],cnt,ans;
int cmp(int x,int y){return x<y;}
int check(int x,int pos){
	int k=pos-x;
	if(k==0){
		return 0;
	}
	for(int i=1;i<=m;i++){
		if(k%a[i]==0){
			if(k==a[i]){
				ans++;
				x+=a[i];
			}
			else {
				ans+=k/a[i];
				x+=k;
			}
		}
	}
	if(x==pos){
		return 0;
	}
	return 1;
}
void add(){
	int flag=0;
	for(int i=1;i<=n;i++){
		int num=0;
		flag=0;
		for(int j=1;j<=m;j++){
			if(i%a[j]==0){
				ans++;
				num+=a[j];
			}
		}
		cout<<ans<<endl;
		flag=check(num,i);
		
	}
	if(flag==0){
		cout<<ans;
	}else{
		cout<<-1;
	}
	return ;
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=m;i++){
		cin>>a[i];
	}
	sort(a+1,a+1+m,cmp);
	if(a[1]!=1){cout<<-1;return 0;}
	add();
	return 0;
}
2024/8/5 10:37
加载中...