답안 #1096539

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1096539 2024-10-04T17:27:48 Z andrewp Addk (eJOI21_addk) C++14
0 / 100
1538 ms 3120 KB
//Dedicated to my love, ivaziva
#pragma GCC optimize("Ofast") 
#include <bits/stdc++.h> 
using namespace std;   
 
#define int long long 

using pii = pair<int, int>;
using ll = int64_t;  
  
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define pb push_back 
#define dbg(x) cerr<<#x<<": "<<x<<'\n';  
#define dbga(A,l_,r_){for(int i_=l_;i_<=r_;i_++)cerr<<A[i_]<<' ';cerr<<'\n';}
#define dbgv(a_){for(auto x_:a_) cerr<<x_<<' ';cerr<<'\n';}  

const int maxn = 1e5 + 20;
int n, k, a[maxn];

int32_t main()  {
    ios::sync_with_stdio(false); cin.tie(nullptr);  
    cout.tie(nullptr); cerr.tie(nullptr);
 
    cin >> n >> k;
    for (int i = 1; i <= n; i++) {
        cin >> a[i];
    }
    int q;
    cin >> q;
    while (q--) {
        int tp;
        cin >> tp;
        if (tp == 1) {
            continue;
        }
        int l, r, m;
        cin >> l >> r >> m;
        int sum = 0, c = min(r - l + 1 - m + 1, m);
        for (int i = l; i <= (l + c - 2); i++) {
            sum += a[i] * (i - l + 1);
        }   
        for (int i = r; i >= (r - c + 2); i--) {
            sum += a[i] * (r - i + 1);
        }
        for (int i = l + c - 1; i <= r - c + 1; i++) {
            sum += a[i] * c;
        }
        cout << sum << '\n';
    }
    return 0;   
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 279 ms 1272 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1538 ms 3120 KB Output isn't correct
2 Halted 0 ms 0 KB -