結果
問題 |
No.3164 [Chery 7th Tune B] La vie en rose
|
ユーザー |
|
提出日時 | 2025-05-30 21:29:45 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 135 ms / 2,000 ms |
コード長 | 1,564 bytes |
コンパイル時間 | 3,444 ms |
コンパイル使用メモリ | 302,908 KB |
実行使用メモリ | 10,308 KB |
最終ジャッジ日時 | 2025-05-30 21:29:57 |
合計ジャッジ時間 | 11,905 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 34 |
ソースコード
#pragma GCC optimize("Ofast") #pragma GCC optimize("unroll-loops") #include <bits/stdc++.h> using namespace std; using ll = long long; const ll mod = 1e9 + 7; const ll mod2 = 998244353; ll gcd(ll a, ll b) { return b ? gcd(b, a % b) : a; } ll pow(ll a, ll b) { ll ans = 1; while (b) { if (b & 1) ans *= a; b >>= 1; a *= a; } return ans; } ll pow(ll a, ll b, ll c) { ll ans = 1; while (b) { if (b & 1) ans = (ans * a) % c; b >>= 1; a = (a * a) % c; } return ans; } void check(bool b) { if (b) cout << "Yes\n"; else cout << "No\n"; } int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int t = 1; // cin >> t; while (t--) { ll n;cin>>n; vector<ll>a(n); for (int i = 0; i < n; ++i) { cin>>a[i]; } ll last=0; vector<ll>v(n); vector<ll>v1(n); v[0]=a[0]; for (int i = 1; i < n; ++i) { if (a[i]==0 ||a[i-1]==0) last=i; v[last]+=a[i]; v1[i]=last; } ll q;cin>>q; while (q--){ ll p,x;cin>>p>>x; --p; if (a[p]){ cout<<v[v1[p]]+x-a[p]<<'\n'; } else{ if (p)x+=v[v1[p-1]]; if (p<n-1)x+=v[v1[p+1]]; cout<<x<<'\n'; } } } return 0; }