#6过不了的可以进来看看是不是我这个问题
  • 板块CF2A Winner
  • 楼主H_F_lenz
  • 当前回复2
  • 已保存回复2
  • 发布时间2022/7/26 19:26
  • 上次更新2023/10/27 18:16:49
查看原帖
#6过不了的可以进来看看是不是我这个问题
271023
H_F_lenz楼主2022/7/26 19:26

我真的服了这个老六题目说好的n<=1000,我调了半天wa,把数组扩到10000就过了,我真的不知道为什么```cpp #include<bits/stdc++.h> using namespace std; int tot=0,c[100001]={0},d[100001]={0},maxx=-999999999,maxname,maxs=0,e[100001]={0}; string s[1000001]; int main() { int n; cin>>n; for(int i=1;i<=n;i++) { string s1; int m; cin>>s1>>m; bool b=0; for(int j=1;j<=tot;j++) { if(s[j]==s1) { b=1; c[j]+=m; if(m>0&&e[j]<c[j]) { d[j]=i; e[j]=c[j]; } break; } } if(b==0) { s[++tot]=s1; c[tot]+=m; d[tot]=i; e[tot]=c[tot]; } } for(int i=1;i<=tot;i++) { if(c[i]>maxx) { maxx=c[i]; maxname=i; maxs=d[i]; } else if(c[i]==maxx) { if(d[i]<maxs) { maxx=c[i]; maxname=i; maxs=d[i]; } } } cout<<s[maxname]; }

2022/7/26 19:26
加载中...