Submission #995167


Source Code Expand

#include <algorithm>
#include <functional>
#include <iomanip>
#include <iostream>
#include <map>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <vector>
#define SREP(s,i,m) for(unsigned int i = s; i < m; ++i)
#define REP(i,m) SREP(0,i,m)
using namespace std;

#ifdef _MSC_VER
using LONG = __int64;
using ULONG = unsigned __int64;
#else
using LONG = long long int;
using ULONG = unsigned long long int;
#endif

// 二乗を計算する。
int sq(int x) { return x * x; }
int main(void) {
  ULONG N, A;
  cin >> N >> A;
  vector<ULONG> D(N + 1);
  D[1] = ULLONG_MAX;
  for (ULONG i = 2; i <= N; i++) {
    ULONG best = -1;
    for (LONG j = 1; j < i; j++) {
      ULONG t = D[j] + (i + j - 1) / j + A;
      best = min(t, best);
    }
    D[i] = best;
  }
  cout << D[N] << endl;
  return 0;
}

Submission Info

Submission Time
Task E - Cookies
User StoneDot
Language C++14 (GCC 5.4.1)
Score 0
Code Size 881 Byte
Status CE

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:30:10: error: ‘ULLONG_MAX’ was not declared in this scope
   D[1] = ULLONG_MAX;
          ^