桶排过了,但为什么在寻找分数线时要j>=0而不是j>=1?
查看原帖
桶排过了,但为什么在寻找分数线时要j>=0而不是j>=1?
727649
sheryang_s_son楼主2023/7/3 23:18

原代码(70pts):

#include<bits/stdc++.h>
using namespace std;
int w,n,line,score;
int a[100001],k=0,b[601];
int main(){
	cin>>n>>w;
	for(int i=1;i<=n;i++){
		int temp=max(1,int(i*w/100));
		cin>>score;
		b[score]++;
		for(int j=600;j>=1;j--){
			line+=b[j];
			if(line>=temp){
				line=0;
				printf("%d ",j);
				break;
			}
		}
	}
	return 0;
}

然后把13行改为for(int j=600;j>=0;j++)就过了……

有人知道为什么吗???

2023/7/3 23:18
加载中...