我这第二个for循环,为什么进不去呢,一直输出0
查看原帖
我这第二个for循环,为什么进不去呢,一直输出0
423006
傻肥狍子楼主2020/12/10 18:37
#include<bits/stdc++.h>
using namespace std;
double t[1000101];
struct lie
{
      int niu;
      int sudu;
      double cao;
}o[1010000];
bool compare(struct lie k,struct lie h)
{
    return k.cao>h.cao;
}
int main(void)
{
	freopen("data.in","r",stdin);
	int a,i,j;
	double sum=0,num=0;
	scanf("%d",&a);
	for(i=0;i<a;i++)
	{
		scanf("%d %d",&o[i].niu,&o[i].sudu);
		o[i].cao=1.0*o[i].sudu/o[i].niu;
		sum+=o[i].sudu;
	}
    sort(o,o+a,compare);
	for(i=0;i<a;i++)
	{
		if(o[i].niu==0)
		{
			continue;
		}
		else
		{
			sum-=o[i].sudu;
			num+=sum*2*o[i].niu;
		}
	}
	printf("%.0lf",num);
	return 0;
}
2020/12/10 18:37
加载中...