Submission #7086192


Source Code Expand

#include <bits/stdc++.h>
#define ll long long
#define rep(X,N) for(ll X = 0; X < (N); X++)
#define PI (acos(-1.0))
#define pback push_back
#define mpair make_pair
#define MODN 1000000007
#define ALL(V) (V).begin(),(V).end()

using namespace std;

int main(){

    //ngの数がnと同じか,
    //ダイクストラ法で100回で0まで到達できるかを確認する
    int n;
    bool ans = false;

    vector<int> ng;
    cin >> n;

    rep(i,3){
        int tmp;
        cin >> tmp;
        ng.pback(tmp);
    }

    priority_queue<pair<int,int>, vector<pair<int,int>>, greater<pair<int,int>>> pq;
    vector<int> cost(301,INT_MAX);

    pq.push(mpair(0,n));

    while(!pq.empty()){

        int step = pq.top().first;
        int tmpn = pq.top().second;

        if(tmpn >= 0 && tmpn != ng[0] && tmpn != ng[1] && tmpn != ng[2] && step < cost[tmpn]){
            cost[tmpn] = step;

            pq.push(mpair(step + 1, tmpn - 1));
            pq.push(mpair(step + 1, tmpn - 2));
            pq.push(mpair(step + 1, tmpn - 3));
        }

        pq.pop();
    }

    cout << (cost[0] <= 100 ? "YES" : "NO" ) << endl;

    

    return 0;
}

Submission Info

Submission Time
Task C - 123引き算
User goto_isyuku_dev
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1202 Byte
Status AC
Exec Time 1 ms
Memory 256 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 31
Set Name Test Cases
All sample_01.txt, sample_02.txt, sample_03.txt, test_143_142_141_140.txt, test_1_1_2_3.txt, test_1_2_3_4.txt, test_200_200_2_3.txt, test_231_77_78_80.txt, test_235_124_126_125.txt, test_253_45_47_48.txt, test_297_223_224_225.txt, test_297_294_292_290.txt, test_297_297_30_83.txt, test_297_3_43_72.txt, test_298_125_123_124.txt, test_298_293_295_291.txt, test_298_298_4_8.txt, test_298_36_72_98.txt, test_298_55_3_43.txt, test_298_92_91_295.txt, test_299_200_151_65.txt, test_299_240_35_154.txt, test_299_300_299_298.txt, test_299_33_242_151.txt, test_299_56_57_58.txt, test_299_66_132_198.txt, test_300_271_44_68.txt, test_300_299_298_296.txt, test_300_30_99_183.txt, test_300_4_5_6.txt, test_84_34_64_36.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
test_143_142_141_140.txt AC 1 ms 256 KB
test_1_1_2_3.txt AC 1 ms 256 KB
test_1_2_3_4.txt AC 1 ms 256 KB
test_200_200_2_3.txt AC 1 ms 256 KB
test_231_77_78_80.txt AC 1 ms 256 KB
test_235_124_126_125.txt AC 1 ms 256 KB
test_253_45_47_48.txt AC 1 ms 256 KB
test_297_223_224_225.txt AC 1 ms 256 KB
test_297_294_292_290.txt AC 1 ms 256 KB
test_297_297_30_83.txt AC 1 ms 256 KB
test_297_3_43_72.txt AC 1 ms 256 KB
test_298_125_123_124.txt AC 1 ms 256 KB
test_298_293_295_291.txt AC 1 ms 256 KB
test_298_298_4_8.txt AC 1 ms 256 KB
test_298_36_72_98.txt AC 1 ms 256 KB
test_298_55_3_43.txt AC 1 ms 256 KB
test_298_92_91_295.txt AC 1 ms 256 KB
test_299_200_151_65.txt AC 1 ms 256 KB
test_299_240_35_154.txt AC 1 ms 256 KB
test_299_300_299_298.txt AC 1 ms 256 KB
test_299_33_242_151.txt AC 1 ms 256 KB
test_299_56_57_58.txt AC 1 ms 256 KB
test_299_66_132_198.txt AC 1 ms 256 KB
test_300_271_44_68.txt AC 1 ms 256 KB
test_300_299_298_296.txt AC 1 ms 256 KB
test_300_30_99_183.txt AC 1 ms 256 KB
test_300_4_5_6.txt AC 1 ms 256 KB
test_84_34_64_36.txt AC 1 ms 256 KB