本蒟蒻第一次写上海月赛题解,初测500分就屁颠屁颠跑来CSDN写题解了
T1 求和问题
这道水题只要从用一个值储存大小,从1~n遍历、更新就好了,这么“难”的题目,直接贴代码:
#include <bits/stdc++.h>
using namespace std;
long long n,a[200005],sum,ans;
int main() {
scanf("%lld",&n);
for(int i=1;i<=n;i++) scanf("%lld",&a[i]);
for(int i=1;i<=n;i++) {
sum+=a[i];
if(sum>=0) ans=i;
}
cout<<ans;
return 0;
}
T2 得分排名
直接sort+比较函数,STL就是香
#include <bits/stdc++.h>
using namespace std;
struct student{
int num,val;
}a[200005];
bool cmp(student a,student b) {
if(a.val==b.val) return a.num<b.num;
return a.val>b.val;
}
int n;
int