Submission #3978764


Source Code Expand

#include <bits/stdc++.h>

#define REP(i, s,  n) for(int i = s;i < (n);i++)
#define VSORT(v) sort(v.begin(), v.end());
#define int64 long long
#define pb(a) push_back(a)
#define REP64(i, s,  n) for(int64 i = s;i < (n);i++)
#define INF 999999999
#define MOD 1000000007
using namespace std;

typedef pair<int, int> P;
typedef pair<int, P> PP;

template<class T>bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; }
template<class T>bool chmin(T &a, const T &b) { if (b<a) { a=b; return 1; } return 0; }

int dy[]={0, 0, 1, -1, 0};
int dx[]={1, -1, 0, 0, 0};

//---------------------------------------------------------------
//---------------------------------------------------------------

int N;
int NG1, NG2, NG3;

int dp[101][301];

int check(int i, int z) {
    if(i > 100)    return -1;
	if(z < 0)		return -1;
	if(z == 0)		return 1;
	if(dp[i][z] != 0)	return dp[i][z];
	
	int ans = max(check(i + 1, z - 1), check(i + 1, z - 2));
	ans = max(ans, check(i + 1, z - 3));
	dp[i][z] = ans;
	return ans;
}

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(0);

	cin >> N;
	cin >> NG1 >> NG2 >> NG3;
	REP(i, 0, 100) {
    	dp[i][NG1] = -1;
    	dp[i][NG2] = -1;
    	dp[i][NG3] = -1;
	}
	
	if(check(0, N) == 1)	cout << "YES" << endl;
	else			    	cout << "NO" << endl;
	
	return 0;
}

Submission Info

Submission Time
Task C - 123引き算
User k_6101
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1359 Byte
Status AC
Exec Time 2 ms
Memory 384 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 384 KB
sample_02.txt AC 1 ms 384 KB
sample_03.txt AC 2 ms 384 KB
test_143_142_141_140.txt AC 1 ms 384 KB
test_1_1_2_3.txt AC 1 ms 384 KB
test_1_2_3_4.txt AC 1 ms 384 KB
test_200_200_2_3.txt AC 1 ms 384 KB
test_231_77_78_80.txt AC 2 ms 384 KB
test_235_124_126_125.txt AC 1 ms 384 KB
test_253_45_47_48.txt AC 1 ms 384 KB
test_297_223_224_225.txt AC 1 ms 384 KB
test_297_294_292_290.txt AC 2 ms 384 KB
test_297_297_30_83.txt AC 1 ms 384 KB
test_297_3_43_72.txt AC 2 ms 384 KB
test_298_125_123_124.txt AC 1 ms 384 KB
test_298_293_295_291.txt AC 1 ms 384 KB
test_298_298_4_8.txt AC 1 ms 384 KB
test_298_36_72_98.txt AC 2 ms 384 KB
test_298_55_3_43.txt AC 2 ms 384 KB
test_298_92_91_295.txt AC 2 ms 384 KB
test_299_200_151_65.txt AC 2 ms 384 KB
test_299_240_35_154.txt AC 2 ms 384 KB
test_299_300_299_298.txt AC 1 ms 384 KB
test_299_33_242_151.txt AC 2 ms 384 KB
test_299_56_57_58.txt AC 2 ms 384 KB
test_299_66_132_198.txt AC 2 ms 384 KB
test_300_271_44_68.txt AC 2 ms 384 KB
test_300_299_298_296.txt AC 2 ms 384 KB
test_300_30_99_183.txt AC 2 ms 384 KB
test_300_4_5_6.txt AC 2 ms 384 KB
test_84_34_64_36.txt AC 1 ms 384 KB