QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#732133 | #9544. Grand Prix of Ballance | votienkhoa | WA | 1ms | 3800kb | C++17 | 2.5kb | 2024-11-10 13:23:38 | 2024-11-10 13:23:38 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define double long double
#define endl "\n"
typedef map<int,int> mii;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<pair<int,int>> vpii;
typedef vector<pair<pair<int,int>,int>> vpiii;
#define that ios_base::sync_with_stdio(false);
#define summer "or maybe fall?";
#define I cin.tie(NULL);
#define had "just a thing of the past";
#define you cout.tie(NULL);
#define dbg(x) cout << #x << " = " << x << endl;
#define vdbg(v) for(auto x : v) cout << x.fi << " "; cout << endl; for(auto x : v) cout << x.se << " "; cout << endl;
#define in(a) for (auto &x : (a)) cin >> x
#define all(a) (a).begin(), (a).end()
#define rall(a) (a).rbegin(), (a).rend()
#define For(i,a,b) for(int i=a; i<b; i++)
#define Fora(i,a,b) for(int i=a; i<=b; i++)
#define Fore(i,a,b) for(int i=b; i>=a; i--)
#define fi first
#define se second
#define pb push_back
#define mp make_pair
#define unmap unordered_map
#define pq priority_queue
const int N = 2e5 + 1;
const int mod = 1e9 + 7;
bool cmp(pair<int,int> a, pair<int,int> b){
if (a.se == b.se) return a.fi < b.fi;
return a.se > b.se;
}
void solve() {
int n,m,q; cin >> n >> m >> q;
int level[n+1];
int level_point[n+1];
int giveup[m+1][n+1];
int complete[m+1][n+1];
mii player;
memset(level,0,sizeof(level));
memset(giveup, 0, sizeof(giveup));
memset(complete, 0, sizeof(complete));
For(i,1,n+1) level_point[i] = m;
while(q--){
//--------------------
int type; cin >> type;
if (type == 1){
int tmp; cin >> tmp;
level[tmp] = 1;
}
else if (type == 2){
int id,x; cin >> id >> x;
if (level[x] && giveup[id][x] == 0 && complete[id][x] == 0){
player[id] += level_point[x];
level_point[x]--;
complete[id][x] = 1;
}
}
else if (type == 3){
int id,x; cin >> id >> x;
giveup[id][x] = 1;
}
}
vpii res;
Fora(i,1,m){
res.pb({i,player[i]});
}
sort(all(res), cmp);
for (auto x : res){
cout << x.fi << " " << x.se << endl;
}
}
signed main(){
//that summer I had you
if(fopen("banhmi.txt", "r")){
freopen("banhmi.txt", "r", stdin);
freopen( "banhbao.txt", "w", stdout);
}
int t; cin >> t;
while(t--) solve();
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3588kb
input:
3 3 4 6 1 2 2 1 1 2 2 2 3 3 2 2 3 2 2 1 2 3 4 8 1 2 2 1 1 2 2 2 3 3 2 2 3 2 2 1 2 1 1 2 1 1 3 4 7 1 2 2 1 1 2 2 2 3 3 2 2 3 2 2 1 2 1 1
output:
2 4 1 3 3 0 4 0 1 7 2 4 3 0 4 0 2 4 1 3 3 0 4 0
result:
ok 12 lines
Test #2:
score: -100
Wrong Answer
time: 1ms
memory: 3800kb
input:
10 18 8 8 2 1 6 1 13 2 1 18 3 8 13 2 7 14 2 5 11 3 6 13 3 1 13 26 7 11 1 22 2 7 22 1 9 2 6 24 1 2 1 18 3 3 4 2 3 18 1 26 3 7 1 3 2 26 1 3 33 3 3 1 2 3 1 2 2 1 1 1 2 1 1 2 1 1 3 1 1 3 3 1 3 2 1 3 3 1 2 2 1 2 2 1 3 3 1 2 2 1 2 2 1 3 3 1 2 3 1 2 3 1 3 3 1 2 3 1 2 2 1 2 2 1 2 2 1 2 1 1 3 2 1 2 2 1 3 2 1...
output:
1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 3 7 7 7 1 0 2 0 4 0 5 0 6 0 1 3 2 0 3 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 22 25 25 25 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0 16 0 17 0 18 0 19 0 20 0 21 0 23 0 24 0 1 0 2 0...
result:
wrong answer 43rd lines differ - expected: '25 25', found: '22 25'