這題目的題設就是傻逼。
保留一位小數是係數保留一位小數,指數是整數,不存在小數的情況,所以不保留。
係數是整數也要保留一位小數。
別去想什麼0.04應該化爲0.0,0.05化爲0.1。
這個傻逼輸出坑死我了。
#include <stdio.h>
int main()
{
float A[1002] = { 0 };
float B[1002] = { 0 };
float C[1002] = { 0 };
int count_A, count_B;
int i;
int location;
float add;
int sum=0;
scanf("%d", &count_A);
for (i = 0; i < count_A; i++)
{
scanf("%d", &location);
scanf("%f", &add);
A[location] = A[location] + add;
}
scanf("%d", &count_B);
for (i = 0; i < count_B; i++)
{
scanf("%d", &location);
scanf("%f", &add);
B[location] = B[location] + add;
}
for (i = 0; i < 1001; i++)
{
C[i] = A[i] + B[i];
if(C[i]!=0)
sum++;
}
if (sum == 0)
printf("0");
else
printf("%d", sum);
for (i = 1000; i >=0; i--)
{
if (C[i] != 0)
printf(" %d %.1f", i, C[i]);
}
}