Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- using namespace std;
- typedef struct runner{
- int num;
- int sp;
- int lane;
- }runner;
- vector<int> sz;
- vector<runner> winner;
- int nl;
- void PrintWinner(){
- for(auto x : winner){
- cout << x.num << "\n";
- }
- return;
- }
- void PrintSize(){
- for(int i = 1; i <= nl; ++i){
- cout << sz[i] << " ";
- }
- cout << "\n";
- return;
- }
- int main(){
- int nr, r, l, s;
- scanf("%d", &nr);
- scanf("%d", &nl);
- sz.assign(nl + 1, 0);
- for(int i = 1; i <= nr; ++i){
- scanf("%d %d %d", &r, &l, &s);
- if(sz[l] + 1 > winner.size()){
- winner.push_back({r, s, l});
- } else if(s > winner[sz[l]].sp){
- winner[sz[l]] = {r, s, l};
- } else if(s == winner[sz[l]].sp){
- if(l < winner[sz[l]].lane){
- winner[sz[l]] = {r, s, l};
- }
- }
- ++sz[l];
- }
- PrintWinner();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement