分析
刚开始第一次交只得到19分,卡在了最后一个测试用例上,百思不得其解。
后来发现这位博主讲的:原来我们是一样的漏洞…
链接
题解
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,x,a1=0,a2=0,a3=0,k1=0;
double a4=0,k2=0;
vector<int> a5;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&x);
if(x%5==0&&x%2==0)
a1+=x;
else if(x%5==1)
{
a2=a2+pow(-1,k1)*x;
k1++;
}
else if(x%5==2)
a3++;
else if(x%5==3)
{
a4+=x;
k2++;
}
else if(x%5==4)
a5.push_back(x);
}
if(a1==0) printf("N ");
else printf("%d ",a1);
if(k1==0) printf("N ");
else printf("%d ",a2);
if(a3==0) printf("N ");
else printf("%d ",a3);
if(k2==0) printf("N ");
else
{
//"%.1lf " 输出0.0,不管a4和k2是int还是double,晕
//cout<<a4<<" "<<k2<<endl;
printf("%.1f ",a4*1.0/k2);
}
if(a5.size()==0) printf("N\n");
else
{
vector<int>::iterator it=max_element(a5.begin(),a5.end());
printf("%d\n",*it);
}
return 0;
}