답안 #593456

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
593456 2022-07-11T08:14:49 Z serkanrashid Addk (eJOI21_addk) C++14
0 / 100
35 ms 2388 KB
#include <bits/stdc++.h>
#define endl '\n'

using namespace std;

const int maxn=1e5+5;
int n,k,q;
long long a[maxn],pref[maxn],suff[maxn],dp[maxn];

void read()
{
    cin >> n >> k;
    for(int i=1;i<=n;i++)
    {
        cin >> a[i];
        pref[i]=pref[i-1]+a[i]*i;
        dp[i]=dp[i-1]+a[i];
        suff[i]=suff[i-1]+a[i]*(n-i+1);
    }
    cin >> q;
    int ch,l,r,m,idx,mid,obr;
    long long ans=0;
    for(int i=1;i<=q;i++)
    {
        cin >> ch;
        ans=0;
        if(ch==1)
        {
            for(int j=1;j<=k;j++) cin >> ch;
        }
        else
        {
            cin >> l >> r >> m;
            idx=l+m-1;
            mid=(l+r)/2;
            idx=mid;
            ans+=(((pref[idx-1]-pref[l-1]))-((dp[idx-1]-dp[l-1])*(l-1)));
            obr=l+r-idx;
            ans+=(((suff[r]-suff[obr]))-((dp[r]-dp[obr])*(n-r)));
            ans+=(((dp[obr]-dp[idx-1])*((idx-l+1))));
            cout << ans << endl;
        }
    }
}
int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	read();
return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 10 ms 1236 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 35 ms 2388 KB Output isn't correct
2 Halted 0 ms 0 KB -