結果
問題 | No.433 ICPC国内予選の選抜ルールがこんな感じだったらうれしい |
ユーザー | 🍡yurahuna |
提出日時 | 2016-07-14 12:03:56 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 112 ms / 4,000 ms |
コード長 | 1,594 bytes |
コンパイル時間 | 1,779 ms |
コンパイル使用メモリ | 173,388 KB |
実行使用メモリ | 8,560 KB |
最終ジャッジ日時 | 2024-11-07 23:07:04 |
合計ジャッジ時間 | 6,448 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 48 |
ソースコード
#include <bits/stdc++.h> using namespace std; #define int long long // <-----!!!!!!!!!!!!!!!!!!! #define rep(i,n) for (int i=0;i<(n);i++) #define rep2(i,a,b) for (int i=(a);i<(b);i++) #define rrep(i,n) for (int i=(n)-1;i>=0;i--) #define rrep2(i,a,b) for (int i=(b)-1;i>=(a);i--) #define all(a) (a).begin(),(a).end() typedef long long ll; typedef pair<int, int> Pii; typedef tuple<int, int, int> TUPLE; typedef vector<int> V; typedef vector<V> VV; typedef vector<VV> VVV; typedef vector<vector<int>> Graph; const int inf = 1e9; const int mod = 1e9 + 7; struct Data { int id_team, id_univ; int ac, ue, pena; Data(){} Data(int _id_team, int _id_univ, int _ac, int _ue, int _pena) : id_team(_id_team), id_univ(_id_univ), ac(_ac), ue(_ue), pena(_pena) {} bool operator<(const Data& r) const { return ac == r.ac ? (ue == r.ue ? pena < r.pena : ue < r.ue) : ac > r.ac; } void print() { cerr << id_team << " " << id_univ << " " << ac << " " << ue << " " << pena << endl; } }; signed main() { std::ios::sync_with_stdio(false); std::cin.tie(0); int N, K; cin >> N >> K; vector<Data> teams; rep(i, N) { int s, p, u; cin >> s >> p >> u; teams.emplace_back(i, u, s, 0, p); } sort(all(teams)); // rep(i, N) teams[i].print(); const int MAX_UNIV = 100001; int cnt_ue[MAX_UNIV] = {}; rep(i, N) { teams[i].ue = cnt_ue[teams[i].id_univ]; ++cnt_ue[teams[i].id_univ]; } sort(all(teams)); rep(i, K) { cout << teams[i].id_team << endl; } }