結果
問題 | No.606 カラフルタイル |
ユーザー |
![]() |
提出日時 | 2017-12-06 00:08:26 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 148 ms / 2,000 ms |
コード長 | 1,307 bytes |
コンパイル時間 | 879 ms |
コンパイル使用メモリ | 101,224 KB |
実行使用メモリ | 6,528 KB |
最終ジャッジ日時 | 2024-11-28 18:26:34 |
合計ジャッジ時間 | 3,109 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 25 |
ソースコード
#include<iostream>#include<iomanip>#include<math.h>#include<vector>#include<algorithm>#include<set>#include<map>#include<queue>#include<stack>#include<string>#include<bitset>#define INF 1000000000ll#define MOD 1000000007ll#define EPS 1e-10#define REP(i,m) for(long long i=0; i<m; i++)#define FOR(i,n,m) for(long long i=n; i<m; i++)#define DUMP(a) for(long long dump=0; dump<(ll)a.size(); dump++) { cout<<a[dump]; if(dump!=(ll)a.size()-1) cout<<" "; else cout<<endl; }#define ALL(v) v.begin(),v.end()#define pb push_backusing namespace std;typedef long long ll;typedef pair<ll, ll> P;typedef long double ld;int main() {cin.tie(0);ios::sync_with_stdio(false);ll n,k,q;cin>>n>>k>>q;vector<ll> cnt(k,0);vector<pair<char,P>> abc(q);REP(i,q) cin>>abc[i].first>>abc[i].second.first>>abc[i].second.second;reverse(ALL(abc));ll rc=0,cc=0;vector<bool> r(n,false);vector<bool> c(n,false);REP(i,q) {if(abc[i].first=='R') {if(r[abc[i].second.first-1]) continue;cnt[abc[i].second.second-1]+=n-cc;rc++;r[abc[i].second.first-1]=true;} else {if(c[abc[i].second.first-1]) continue;cnt[abc[i].second.second-1]+=n-rc;cc++;c[abc[i].second.first-1]=true;}}ll buf=n*n;REP(i,k) buf-=cnt[i];cnt[0]+=buf;REP(i,k) cout<<cnt[i]<<endl;}