标签:const printf pre str mem inf mamicode sizeof als
尝试使用set记录幂次,实际边界问题较多,下次谨慎使用,
set不太适用递减输出!!
最后一个点输出错误,这是因为得到的最后结果为0,需要只输出一个0(后面没有空格)。
#include<cstdio>
#include<set>
#include<string.h>
using namespace std;
const int N = 1010;
set<int> isvis;
double P[N];
int main(){
int n;
int x;
double a;
memset(P,0,sizeof(P));
scanf("%d",&n);
for(int i = 0;i<n;i++){
scanf("%d %lf",&x,&a);
isvis.insert(x);
P[x] += a;
}
scanf("%d",&n);
for(int i = 0;i<n;i++){
scanf("%d %lf",&x,&a);
isvis.insert(x);
P[x] += a;
}
for(set<int>::iterator it = isvis.begin();it!=isvis.end();it++){
if(P[*it]==0) isvis.erase(it);
}
int count = 0;
if(isvis.size()==0) printf("0");
else{
printf("%d ",isvis.size());
for(set<int>::iterator it = isvis.end();it!=isvis.begin();){
it--;
printf("%d %.1f",*it,P[*it]);
count++;
if(count!=isvis.size())printf(" ");
}
}
return 0;
}
PAT A1002 A+B for Polynomials (25分)
标签:const printf pre str mem inf mamicode sizeof als
原文地址:https://www.cnblogs.com/shuibeng/p/13599625.html