Submission #377132

# Submission time Handle Problem Language Result Execution time Memory
377132 2021-03-13T03:34:13 Z kevinxiehk Poi (IOI09_poi) C++17
100 / 100
772 ms 12416 KB
#include<bits/stdc++.h>
using namespace std;
struct con{
    bool solve[2005];
    int score=0;
    int cnt=0;
    int id=0;
}ppl[2005];
bool cmp(con a,con b){
    if(a.score==b.score){
        if(a.cnt==b.cnt)return a.id<b.id;
        return a.cnt>b.cnt;
    }
    return a.score>b.score;
}
int cannot[2005];
int main(){
    int n,t,p;
    cin>>n>>t>>p;
    for(int i=0;i<2000;i++)cannot[i]=0;
    for(int i=1;i<=n;i++){
        ppl[i].id=i;
        for(int j=0;j<t;j++){
            cin>>ppl[i].solve[j];
            cannot[j]+=(1-ppl[i].solve[j]);
            if(ppl[i].solve[j])ppl[i].cnt++;
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=0;j<t;j++){
            ppl[i].score+=ppl[i].solve[j]*cannot[j];
        }
    }
    sort(ppl+1,ppl+n+1,cmp);
    int rank=1;
    while(ppl[rank].id!=p)rank++;
    cout<<ppl[rank].score<<" "<<rank<<endl;
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 3 ms 4460 KB Output is correct
2 Correct 3 ms 4332 KB Output is correct
3 Correct 3 ms 4332 KB Output is correct
4 Correct 3 ms 4332 KB Output is correct
5 Correct 3 ms 4332 KB Output is correct
6 Correct 3 ms 4332 KB Output is correct
7 Correct 4 ms 4332 KB Output is correct
8 Correct 4 ms 4332 KB Output is correct
9 Correct 7 ms 4332 KB Output is correct
10 Correct 9 ms 4332 KB Output is correct
11 Correct 26 ms 4460 KB Output is correct
12 Correct 44 ms 4844 KB Output is correct
13 Correct 117 ms 5612 KB Output is correct
14 Correct 166 ms 5996 KB Output is correct
15 Correct 287 ms 7284 KB Output is correct
16 Correct 319 ms 7540 KB Output is correct
17 Correct 455 ms 8948 KB Output is correct
18 Correct 515 ms 9580 KB Output is correct
19 Correct 711 ms 11636 KB Output is correct
20 Correct 772 ms 12416 KB Output is correct