跪求这道题的答案 急急急......

来源:百度知道 编辑:UC知道 时间:2024/06/15 17:02:48
小白鼠排队
Time Limit:1000MS Memory Limit:65536K
Total Submit:1725 Accepted:902

Description
N只小白鼠(1 < N < 100),每只鼠头上戴着一顶有颜色的帽子。现在称出每只白鼠的重量,要求按照白

鼠重量从大到小的顺序输出它们头上帽子的颜色。帽子的颜色用“red”,“blue”等字符串来表示。不

同的小白鼠可以戴相同颜色的帽子。白鼠的重量用整数表示。

Input
输入第一行为一个整数N,表示小白鼠的数目。
下面有N行,每行是一只白鼠的信息。第一个为不大于100的正整数,表示白鼠的重量,;第二个为字符

串,表示白鼠的帽子颜色,字符串长度不超过10个字符。

注意:白鼠的重量各不相同。

Output
按照白鼠的重量从大到小的顺序输出白鼠的帽子颜色。

Sample Input

3
30 red
50 blue
40 green

Sample Output

blue
green
red
我写了这段程序 我知道哪里出了问题 在作业平台上 总是提示runtime error 通过不了

#include <iostream>
using namespace std;
int main()
{
char b[101][12];
int a[100];
int n,i,t;
cin>>n;
a[0]=0;
cin.get();
for(i=1;i<=n;i++)
{
cin.get();
cin>>t;
cin.get();
cin.get(b[i],12);
a[t]

#include <iostream>
using namespace std;

int main()
{
char b[101][12];
int a[101]={0}; /////////////注意,这里的元素个数是101,并且初始化为0
int n,i,t;

cin>>n;
//a[0]=0;
cin.get();
for(i=1;i<=n;i++)
{
//cin.get(); //////////////这个没必要,输入整型后,才需要get掉回车符号
cin>>t;
cin.get();
cin.get(b[i],12);
a[t]=i;
}
for(i=100;i>=1;i--)
{
if(a[i]!=0)
{
cout<<b[a[i]]<<endl;
}
}
return 0;
}