Submission #617773

# Submission time Handle Problem Language Result Execution time Memory
617773 2022-08-01T14:01:50 Z Icebear16 Poi (IOI09_poi) C++14
85 / 100
291 ms 23908 KB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define INF 1e18//change to const int INF=1e18 if causing problem
const ll MOD=998244353;
const ll alt=1e10;
const ll inf=1e9+7;//Precalc is not a bad idea
//#define int ll
#define pb push_back
#define pf push_front
#define mp make_pair
#define fi first
#define se second
#define mod(a) (a+inf)%inf
#define all(a) a.begin(),a.end()
#define rall(a) a.rbegin(),a.rend()
#define sz(a) a.size()

//#pragma GCC optimize("O3,unroll-loops")
//#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
/* run this program using the console pauser or add your own getch, system("pause") or input loop*/

struct triple{
	int b;
	int c;
	int d;
};

bool cmp(triple a,triple aa){
	if(a.b!=aa.b) return a.b>aa.b;
	else{
		if(a.c!=aa.d) return a.c>aa.c;
		else return a.d<aa.d;
	}
}

int32_t main(){
	std::ios_base::sync_with_stdio(false);
//	cin.tie(0)->sync_with_stdio(0);
	int n,t,p;
	cin>>n>>t>>p;
	int a[n][t];
	vector<int> v(t,0);
	vector<triple> e(n);
	for(int i=0;i<n;i++){
		for(int j=0;j<t;j++){
			cin>>a[i][j];
		}
	}
	for(int i=0;i<t;i++){
		for(int j=0;j<n;j++){
			if(a[j][i]==0) v[i]++;
		}
	}
	for(int i=0;i<n;i++){
		for(int j=0;j<t;j++){
			if(a[i][j]==1) a[i][j]=v[j];
		}
	}
	for(int i=0;i<n;i++){
		int y=0,x=0;
		for(int j=0;j<t;j++){
			x+=a[i][j];
			if(a[i][j]>0) y++;
		}
		e[i].b=x;
		e[i].c=y;
		e[i].d=i+1;
	}
	sort(all(e),cmp);
	int ans1,ans2;
	for(int i=0;i<n;i++){
		if(e[i].d==p){
			ans1=e[i].b;
			ans2=i+1;
			break;
		}
	}
	cout<<ans1<<" "<<ans2<<endl;
	return 0;
}
//Icebear16

Compilation message

poi.cpp: In function 'int32_t main()':
poi.cpp:79:19: warning: 'ans2' may be used uninitialized in this function [-Wmaybe-uninitialized]
   79 |  cout<<ans1<<" "<<ans2<<endl;
      |                   ^~~~
poi.cpp:79:14: warning: 'ans1' may be used uninitialized in this function [-Wmaybe-uninitialized]
   79 |  cout<<ans1<<" "<<ans2<<endl;
      |              ^~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 380 KB Output is correct
8 Correct 1 ms 340 KB Output is correct
9 Correct 2 ms 408 KB Output is correct
10 Correct 3 ms 500 KB Output is correct
11 Correct 8 ms 980 KB Output is correct
12 Incorrect 14 ms 1480 KB Output isn't correct
13 Correct 41 ms 3780 KB Output is correct
14 Correct 62 ms 5292 KB Output is correct
15 Correct 116 ms 9252 KB Output is correct
16 Correct 115 ms 9744 KB Output is correct
17 Incorrect 174 ms 14316 KB Output isn't correct
18 Correct 204 ms 16296 KB Output is correct
19 Incorrect 258 ms 21588 KB Output isn't correct
20 Correct 291 ms 23908 KB Output is correct