九十分求助
查看原帖
九十分求助
1440938
zengyuanxi楼主2025/7/22 21:52

/其实把13到21行删了就是满分,但我不理解的是为什么不删就会有一个案例过不去。是的其他地方都是对的哈哈/

#include <iostream>
#include <cmath>
using namespace std;
int main()
{
    int n,m;
    cin>>n>>m;
    int a[m];//每个任务的时间
    for(int i=0;i<m;i++){
    	cin>>a[i];
	}
	if(n>=m){
		for(int i=0;i<m;i++){
   			cout<<i+1<<endl;
  		}
  		for(int i=m;i<n;i++){
	 		cout<<"0"<<endl;
		}
		  return 0;
	}

	int chu[m];//i任务编号,chu[i]在相等 的在一行
	long long sum[n];//累计时间
	for(int i=0;i<n;i++){
		sum[i]=0;
	}
    for(int i=0;i<m;i++){
    	int pos;
    	long long a1=100000000000005;
    	for(int j=0;j<n;j++){
    		if(sum[j]<a1){
    			pos=j;
				a1=sum[j];
			}
		}
		sum[pos]+=a[i];
		chu[i]=pos;
	}
    for(int i=0;i<n;i++){
    	int  f=0;
    	for(int j=0;j<m;j++){
			if(chu[j]==i){
				cout<<j+1<<" ";
				f=1;
			}
		}
		if(f==0)cout<<"0";
		cout<<endl;
	}

    return 0;
}
2025/7/22 21:52
加载中...