快被自己蠢哭了的一道题o(╥﹏╥)o
首先花了好久才看明白题(其实就是底数相同的幂数相加)
看明白了好像还挺简单,然后开始做,就用数组标记就可以了
提交后发现只得了15分
发现系数为0这个地方没考虑
改来改去,还是不对啊
然后翻翻别人的代码,看了半天
哦
题目里说了输出非零项
改改改,,,
还不对
?????
看了看别人的输出,,
难道是要以浮点数的格式输出整数?
试一下,,
过了,,,
了,,,
原来是因为格式,,我的妈,,
以后还是少用cout算了 T^T
#include <cstdio>
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
double n, m, sum;
double arr[1100], brr[1100], crr[1100];
int main(){
cin >> n;
for(int i=0; i<n; i++){
double h;
int t;
cin >> t >> h;
arr[t] += h;
//if(h == 0) brr[t] = 1;
}
/* cin >> m;
for(int j=0; j<m; j++){
double h;
int t;
cin >> t >> h;
if(arr[t] != 0){
arr[t] += h;
}
else {
arr[t] += h;
sum++;
if(brr[t] == 1) sum--;
if(arr[t] == 0) sum--;
}
}*/
cin >> m;
for(int i=0; i<m; i++){
double h;
int t;
cin >> t >> h;
arr[t] += h;
//if(h == 0) brr[t] = 1;
}
for(int k=1000; k>=0; k--){
if(arr[k] != 0 ) {
sum++;
}
}
cout << sum;
for(int k=1000; k>=0; k--){
if(arr[k] != 0 ) {
//cout << " " << k << " "<< arr[k];
printf(" %d %.1f", k, arr[k]);
}
}
return 0;
}
继续加油,在通向大佬的路上匍匐前进。。。