Submission #617779

# Submission time Handle Problem Language Result Execution time Memory
617779 2022-08-01T14:08:14 Z Icebear16 Poi (IOI09_poi) C++14
100 / 100
278 ms 15988 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.c) 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 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 1 ms 340 KB Output is correct
9 Correct 1 ms 340 KB Output is correct
10 Correct 3 ms 340 KB Output is correct
11 Correct 9 ms 792 KB Output is correct
12 Correct 13 ms 1108 KB Output is correct
13 Correct 42 ms 2644 KB Output is correct
14 Correct 62 ms 3648 KB Output is correct
15 Correct 100 ms 6184 KB Output is correct
16 Correct 106 ms 6676 KB Output is correct
17 Correct 156 ms 9720 KB Output is correct
18 Correct 181 ms 10972 KB Output is correct
19 Correct 252 ms 14420 KB Output is correct
20 Correct 278 ms 15988 KB Output is correct