P9740 「KDOI-06-J」ION 比赛

简单模拟题。

题目给出的是总测试点数和目前通过的测试点数,由于一个题的总分知道,所以你直接遍历一遍,可以得到当前的总分。

然后再遍历一次,计算出差的分数需要的题目数量,看看是否够用即可。

特判只需要一题的情况即可。

#include<bits/stdc++.h>
using namespace std;
const int N =1e3+10;
int a[N],b[N];
int main()
{
	int n,t,ans=0;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i]>>b[i];
		ans+=100/a[i]*b[i];
	}
	cin>>t;
	if(ans>=t)	{cout<<"Already Au."<<endl;exit(0);}
	for(int i=1;i<=n;i++){
		int now=t-ans,now1=100/a[i];
		if(now<100/a[i]){
			if(a[i]-b[i]>=1)	cout<<1<<endl;
			else	cout<<"NaN"<<endl;
			continue;
		}
		else if(int(ceil((double)now/(double)now1))<=a[i]-b[i])	cout<<int(ceil((double)now/(double)now1))<<endl;
		else	cout<<"NaN"<<endl;
	}
	return 0;
}
posted @ 2023-10-17 13:24  June_Failure  阅读(47)  评论(0)    收藏  举报  来源