提交时间:2022-02-09 10:04:44
运行 ID: 44541
#include <bits/stdc++.h> using namespace std; typedef long long ll; ll n,m,block,lazy[500005],bl[500005],a[500005]; void Add(ll l,ll r,ll k) { for(ll i=l; i<=r; i++) a[i]+=k; } int main() { scanf("%lld",&n); block=sqrt(n); for (int i=1; i<=n; i++) { scanf("%lld",&a[i]); bl[i]=(i-1)/block+1; } scanf("%lld",&m); for (ll choice,l,r,k; m; m--) { scanf("%lld",&choice); if (choice==1) { scanf("%lld%lld%lld",&l,&r,&k); Add(l,r,k); } else { scanf("%lld",&k); printf("%lld\n",a[k]); } } return 0; }