답안 #715546

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
715546 2023-03-27T07:56:24 Z Koful123 ACM (COCI19_acm) C++17
20 / 50
2 ms 400 KB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl "\n"
#define ff first
#define ss second
#define pb push_back
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
 
struct str{
	string s;
	bool operator < (const str other) const{
		int sz = min(other.s.size(),s.size());
		for(int i = 0; i < sz; i++){
			if(s[i] != other.s[i]){
				return s[i] < other.s[i];
			}
		}
		return s.size() < other.s.size();
	};
};
 
void solve(){
	
	int n,m,pos;
	cin >> n >> m;
 
	vector<pair<pair<int,int>,str>> v(n);	
	for(int i = 0; i < n; i++){
		cin >> v[i].ss.s;
		for(int j = 0; j < m; j++){
			string q; cin >> q;
			if(q[0] == '-'){
				if(q.size() > 1){
					v[i].ff.ss += 20 * 60 * (q[1] - '0');
				}
				continue;
			}
			--v[i].ff.ff; v[i].ff.ss += 20 * (q[1] - '0') * 60;
			v[i].ff.ss += (q[4] - '0') * 3600 + 10 * (q[6] - '0') * 60 + (q[7] - '0') * 60;
			v[i].ff.ss += (q[9] - '0') * 10 + (q[10] - '0');
				
		}
		if(v[i].ss.s == "NijeZivotJedanACM"){
			pos = i;
		}
	}
 
	string fuck; cin >> fuck;
	v[pos].ff.ff = v[pos].ff.ss = 0;
	for(int i = 0; i < m; i++){
		string q; cin >> q;
		if(q[0] == '-'){
			if(q.size() > 1){
				v[pos].ff.ss += 20 * 60 * (q[1] - '0');
			}
			continue;
		}
		--v[pos].ff.ff; v[pos].ff.ss += 20 * (q[1] - '0') * 60;
		v[pos].ff.ss += (q[4] - '0') * 3600 + 10 * (q[6] - '0') * 60 + (q[7] - '0') * 60;
		v[pos].ff.ss += (q[9] - '0') * 10 + (q[10] - '0');
	}
 
	sort(v.begin(),v.end());
	for(int i = 0; i < n; i++){
		if(v[i].ss.s == "NijeZivotJedanACM"){
			cout << i + 1 << endl;
		}	
	}
}
 
signed main(){ 
 
	ios::sync_with_stdio(0);
	cin.tie(0);
 
	int t = 1;
//	cin >> t;
 
	while(t--)
		solve();
 	
	return 0;
}

Compilation message

acm.cpp: In function 'void solve()':
acm.cpp:51:22: warning: 'pos' may be used uninitialized in this function [-Wmaybe-uninitialized]
   51 |  v[pos].ff.ff = v[pos].ff.ss = 0;
      |                      ^
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Incorrect 1 ms 340 KB Output isn't correct
3 Correct 0 ms 212 KB Output is correct
4 Incorrect 2 ms 400 KB Output isn't correct
5 Incorrect 2 ms 340 KB Output isn't correct