Submission #2245911


Source Code Expand

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

#define ll long long
#define vvi vector<vector<int>>
#define vec vector
#define pq priority_queue
#define all(v) (v).begin(), (v).end()
#define uniqueV(x) sort(x.begin(), x.end()); x.erase(unique(x.begin(), x.end()), x.end());
#define rep(i, n) for (int (i) = (0); (i) < (n); ++(i))
#define repp(i, m, n) for (int (i) = (m); (i) < (n); ++(i))
#define debug(x) cerr << #x << ": " << x << endl;
#define debug2(x, y) cerr<<"("<<#x<<", "<<#y<<") = "<<"("<<x<<", "<<y<<")"<<endl;
#define debug3(x, y, z) cerr<<"("<<#x<<", "<<#y<<", "<<#z<<") = "<<"("<<x<<", "<<y<<", "<<z<<")"<<endl;
#define debugB(x, y) cerr<<#x<<": "<<bitset<y>(x) << endl;
#define line() cerr << "---------------" << endl;

const int dx[] = {1, -1, 0, 0};
const int dy[] = {0, 0, -1, 1};
const double PI = 3.14159265358979323846;

template<typename T>
void printA(vector<T> &printArray, char between = ' ') {
   int paSize = printArray.size();
   for (int i = 0; i < paSize; i++) { cerr << printArray[i] << between;}
   if (between != '\n') {cerr << endl;}
}

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

const int INF = 1e8;
int dp[333];
int n;
int ng[5];

bool dame(int x) {
   if (x < 0) return true;
   rep (i, 3) {
      if (x == ng[i]) return true;
   }
   return false;
}

int main() {
   rep (i, 333) dp[i] = INF;
   cin >> n;
   rep (i, 3) {
      cin >> ng[i];
      if (n == ng[i]) {
         puts("NO");
         return 0;
      }
   }

   dp[n] = 0;
   for (int i = n; i >= 0; i--) { // iからの遷移
      for (int j = 1; j <= 3; j++) {
         if (dame(i-j)) continue;
         dp[i-j] = min(dp[i-j], dp[i]+1);
      }
   }

   if (dp[0] <= 100) {
      puts("YES");
   } else {
      puts("NO");
   }

   return 0;
}

Submission Info

Submission Time
Task C - 123引き算
User nomi
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1867 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