結果

問題 No.3388 Sum of Function
コンテスト
ユーザー vjudge1
提出日時 2026-02-10 02:07:23
言語 C++23
(gcc 15.2.0 + boost 1.89.0)
コンパイル:
g++-15 -O2 -lm -std=c++23 -Wuninitialized -DONLINE_JUDGE -o a.out _filename_
実行:
./a.out
結果
AC  
実行時間 2 ms / 2,000 ms
コード長 2,249 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 3,319 ms
コンパイル使用メモリ 336,760 KB
実行使用メモリ 7,848 KB
最終ジャッジ日時 2026-02-10 02:07:28
合計ジャッジ時間 4,685 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 23
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#include <bits/stdc++.h>
using namespace std;

#define LL long long

#define VI vector<int>

#define VL vector<long long>

#define VVL vector<vector<long long>>

#define VVI vector<vector<int>>

#define VS vector<string>

#define ITR(var, start, end) for(int var = start; var < end; var++)

#define PUB push_back

#define POB pop_back

//macro for printing values of a one dimensional array (line by line)
#define OUT1(arr) ITR(i, 0, arr.size()) cout << arr[i] << endl;

//macro for printing values of a one dimensional array (space by space)
#define OUT2(arr) do {\
    ITR(i, 0, arr.size()){\
        i == arr.size() - 1 ? cout << arr[i] : cout << arr[i] << " ";\
    }\
    cout << "\n";\
} while(0)

//macro for printing values of a one dimensional array (line by line and with CASE)
#define OUT3(arr) do{\
    ITR(i, 0, arr.size()){\
        cout << "Case " << i + 1 << ": " << arr[i] << "\n";\
    }\
} while(0)

//macro for printing the values of a two dimensional array (space by space)
#define OUT4(arr) do{\
    ITR(i, 0, arr.size()){\
        ITR(j, 0, arr[i].size()){\
            j == arr[i].size() - 1 ? cout << arr[i][j] : cout << arr[i][j] << " ";\
        }\
        cout << "\n";\
    }\
} while(0)

//macro for printing the values of a two dimensional array (space by space and with CASE)
#define OUT5(arr) do{\
    ITR(i, 0, arr.size()){\
        cout << "Case " << i + 1 << ":" << "\n";\
        ITR(j, 0, arr[i].size()){\
            j == arr[i].size() - 1 ? cout << arr[i][j] : cout << arr[i][j] << " ";\
        }\
        cout << "\n";\
    }\
} while(0)

void findAllPrimes(LL a, LL b, VL &primes){
    if(a == 1 && b == 1) return;
    if(a == 1) a++;
    if(b == 1) b++;
    for(int i = a; i <= b; i++){
        bool flag = true;
        for(int j = 2; j < i; j++){
            if(i % j == 0) { flag = false;; break;}
        }
        if(flag) primes.PUB(i);
    }
}

int main(void){

    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    LL a, b;
    cin >> a >> b;
    VL primes;
    findAllPrimes(a, b, primes);
    LL ans = 0;
    ITR(i, 0, primes.size()){
        LL curr = primes[i];
        LL res = (curr * curr * curr) - (curr * curr) + curr + 1;
        ans += res;
    }
    cout << ans << endl;
}






0