- 提问
A0589第一是谁 为什么会RE?
- 2024-10-6 21:46:51 @
晾出我的代码:
#include<bits/stdc++.h>
using namespace std;
struct node{
string name;
int num;
int scorea=0,scoreb=0,scorec=0,scored=0;
}stu[1000005];
int n,m;
int main(){
// freopen("top2.in","r",stdin);
// freopen("top3.out","w",stdout);
cin>>n>>m;
for(int i=1;i<=n;i++)cin>>stu[i].name;
while(m--){
int typ;
cin>>typ;
if(typ==2){
int maxn=stu[1].scorea+stu[1].scoreb+stu[1].scorec+stu[1].scored;
string maxid;
int searchflag=0;
for(int i=1;i<=n;i++){
int stuscsum=stu[i].scorea+stu[i].scoreb+stu[i].scorec+stu[i].scored;
if(stuscsum>maxn){
maxn=stuscsum;
maxid=stu[i].name;
}
else if(stuscsum==maxn){
if(!searchflag){
searchflag=1;
maxid=stu[i].name;
maxn=stuscsum;
}
if(stu[i].name<maxid){
maxid=stu[i].name;
maxn=stuscsum;
}
}
}
cout<<maxid<<endl;
}
else{
string searchname;
int changea,changeb;
cin>>searchname;
int searchid;
for(int i=1;i<=n;i++){
if(stu[i].name==searchname){
searchid=i;
break;
}
}
cin>>changea>>changeb;
switch (changea) {
case 1:
stu[searchid].scorea=changeb;
break;
case 2:
stu[searchid].scoreb=changeb;
break;
case 3:
stu[searchid].scorec=changeb;
break;
default:
stu[searchid].scored=changeb;
break;
}
}
}
return 0;
}
他说我的searchid没有声明?这是为什么
2 条评论
-
罐头 陈 SU @ 2024-10-7 10:53:17
注意看题目标签
-
2024-10-7 10:50:35@
这题需要文件OI
- 1