Submission #65814280
Source Code Expand
// 綺麗に解きなおし
#include <bits/stdc++.h>
using namespace std;
/////////////////// メイン ///////////////////
int main () {
/////////////////// 前入力 ///////////////////
int n, m, q;
cin >> n >> m >> q;
/////////////////// 前処理 ///////////////////
// 権限を管理するset<pair>
// (2,4)ならユーザ2にページ4の権限があることを、
// (3,0)ならユーザ2に全ページの権限があることを記録
// sortの必要はないが、unoderedだとハッシュ関数作らないとsetに入れられなくて面倒なので、setでやる
set<pair<int,int>> p;
/////////////////// ループ ///////////////////
// q回のクエリ処理
for (int loop=0; loop<q; loop++) {
// クエリタイプを確認
int type;
cin >> type;
// タイプ1の場合
if (type==1) {
// 入力を受け取る
int x, y;
cin >> x >> y;
// ユーザxに、ページyの権限を与える
p.emplace(x,y);
// タイプ2の場合
} else if (type==2) {
// 入力を受け取る
int x;
cin >> x;
// ユーザxに、全ページの権限を与える
p.emplace(x,0);
// タイプ3の場合
} else if (type==3) {
// 入力を受け取る
int x, y;
cin >> x >> y;
// ユーザxが、ページyの権限を持っているか確認して出力
// 全ページ権限か個別ページ権限か、どちらか持っていればOK
if (p.contains({x,0})||p.contains({x,y})) cout << "Yes" << endl;
else cout << "No" << endl;
}
}
/////////////////// 前処理 ///////////////////
// 特になし
//////////////////// 終了 ////////////////////
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - 403 Forbidden |
| User | wightou |
| Language | C++ 23 (gcc 12.2) |
| Score | 300 |
| Code Size | 1853 Byte |
| Status | AC |
| Exec Time | 242 ms |
| Memory | 9376 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 300 / 300 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_01.txt, 00_sample_02.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 01_random_23.txt, 01_random_24.txt, 01_random_25.txt, 01_random_26.txt, 01_random_27.txt, 01_random_28.txt, 01_random_29.txt, 01_random_30.txt, 01_random_31.txt, 01_random_32.txt, 01_random_33.txt, 01_random_34.txt, 01_random_35.txt, 01_random_36.txt, 02_handmade_01.txt, 02_handmade_02.txt, 02_handmade_03.txt, 02_handmade_04.txt, 02_handmade_05.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_01.txt | AC | 1 ms | 3440 KiB |
| 00_sample_02.txt | AC | 1 ms | 3500 KiB |
| 01_random_01.txt | AC | 133 ms | 3608 KiB |
| 01_random_02.txt | AC | 159 ms | 3608 KiB |
| 01_random_03.txt | AC | 177 ms | 3652 KiB |
| 01_random_04.txt | AC | 155 ms | 3516 KiB |
| 01_random_05.txt | AC | 142 ms | 4208 KiB |
| 01_random_06.txt | AC | 171 ms | 4408 KiB |
| 01_random_07.txt | AC | 191 ms | 4252 KiB |
| 01_random_08.txt | AC | 156 ms | 3468 KiB |
| 01_random_09.txt | AC | 159 ms | 6600 KiB |
| 01_random_10.txt | AC | 194 ms | 7712 KiB |
| 01_random_11.txt | AC | 219 ms | 8184 KiB |
| 01_random_12.txt | AC | 163 ms | 3560 KiB |
| 01_random_13.txt | AC | 156 ms | 5224 KiB |
| 01_random_14.txt | AC | 185 ms | 5324 KiB |
| 01_random_15.txt | AC | 210 ms | 5400 KiB |
| 01_random_16.txt | AC | 166 ms | 3520 KiB |
| 01_random_17.txt | AC | 164 ms | 6308 KiB |
| 01_random_18.txt | AC | 197 ms | 7256 KiB |
| 01_random_19.txt | AC | 228 ms | 7532 KiB |
| 01_random_20.txt | AC | 166 ms | 3696 KiB |
| 01_random_21.txt | AC | 173 ms | 6572 KiB |
| 01_random_22.txt | AC | 209 ms | 7960 KiB |
| 01_random_23.txt | AC | 239 ms | 8196 KiB |
| 01_random_24.txt | AC | 171 ms | 3588 KiB |
| 01_random_25.txt | AC | 192 ms | 9240 KiB |
| 01_random_26.txt | AC | 216 ms | 8792 KiB |
| 01_random_27.txt | AC | 227 ms | 8292 KiB |
| 01_random_28.txt | AC | 213 ms | 7240 KiB |
| 01_random_29.txt | AC | 200 ms | 9376 KiB |
| 01_random_30.txt | AC | 222 ms | 8688 KiB |
| 01_random_31.txt | AC | 233 ms | 8252 KiB |
| 01_random_32.txt | AC | 213 ms | 7236 KiB |
| 01_random_33.txt | AC | 201 ms | 9304 KiB |
| 01_random_34.txt | AC | 228 ms | 8676 KiB |
| 01_random_35.txt | AC | 242 ms | 8240 KiB |
| 01_random_36.txt | AC | 218 ms | 7152 KiB |
| 02_handmade_01.txt | AC | 1 ms | 3644 KiB |
| 02_handmade_02.txt | AC | 1 ms | 3492 KiB |
| 02_handmade_03.txt | AC | 215 ms | 7248 KiB |
| 02_handmade_04.txt | AC | 216 ms | 7312 KiB |
| 02_handmade_05.txt | AC | 186 ms | 8752 KiB |