제출 #1068635

#제출 시각아이디문제언어결과실행 시간메모리
1068635vjudge1Naval battle (CEOI24_battle)C++17
30 / 100
378 ms12952 KiB
#include<bits/stdc++.h> using namespace std; int main(){ int n; cin >> n; long long int x[n],y[n]; char c[n]; int pos[n]; vector<tuple<int,int,int>>v; for(int i = 0; i < n; i++){ cin >> x[i] >> y[i] >> c[i]; v.push_back({x[i]+y[i], x[i], i}); pos[i] = 0; } sort(v.begin(),v.end()); int br = 0; for(int i = 0; i < v.size(); i++){ long long int a = get<0>(v[i]); int index = get<2>(v[i]); if(i == 0){ if(c[index] == 'E'){ br++; } }else{ long long int b = get<0>(v[i - 1]); if(a != b){ br = 0; } if(c[index] == 'E'){ br++; }else{ if(br > 0){ pos[index] = 1; br--; } } } } br = 0; int ro = v.size(); for(int i = ro - 1; i >= 0; i--){ long long int a = get<0>(v[i]); int index = get<2>(v[i]); if(i == (ro - 1)){ if(c[index] == 'S'){ br++; } }else{ long long int b = get<0>(v[i + 1]); if(a != b){ br = 0; } if(c[index] == 'S'){ br++; }else{ if(br > 0){ pos[index] = 1; br--; } } } } for(int i = 0; i < n; i++){ if(pos[i] == 0){ cout << i + 1 <<endl; } } }

컴파일 시 표준 에러 (stderr) 메시지

Main.cpp: In function 'int main()':
Main.cpp:17:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::tuple<int, int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |     for(int i = 0; i < v.size(); i++){
      |                    ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...