実行時間制限: 2 sec / メモリ制限: 1024 MB / Difficulty: 43
問題概要
空の数列 に対してクエリが 個与えられるので、順に処理せよ。クエリは次の2種類ある。
1 x
: の末尾に を追加する。2 k
: の後ろから 番目の値を出力する。なお、このクエリが与えられるとき、 の長さは 以上であることが保証される。
制約
考察
と制約が非常に小さいので、計算量について特に気にする必要はない。それぞれのクエリに対する処理を丁寧に実装していくだけ。
コード
#include <bits/stdc++.h> using namespace std; #define rep(i, start, end) for (ll i = (start); i < (ll)(end); i++) // ======================================== // int main() { int Q; cin >> Q; vector<int> A; rep(i, 0, Q) { int t; cin >> t; if (t == 1) { int x; cin >> x; A.push_back(x); } else if (t == 2) { int k; cin >> k; cout << A[A.size() - k] << endl; } } }
実装時間: 5分