Submission #213728


Source Code Expand

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <climits>
#include <cfloat>
#include <ctime>
#include <cassert>
#include <map>
#include <utility>
#include <set>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <sstream>
#include <complex>
#include <stack>
#include <queue>
#include <numeric>
#include <list>
#include <iomanip>
#include <fstream>
#include <bitset>

using namespace std;

#define foreach(it, c) for (__typeof__((c).begin()) it=(c).begin(); it != (c).end(); ++it)
template <typename T> void print_container(ostream& os, const T& c) { const char* _s = " "; if (!c.empty()) { __typeof__(c.begin()) last = --c.end(); foreach (it, c) { os << *it; if (it != last) os << _s; } } }
template <typename T> ostream& operator<<(ostream& os, const vector<T>& c) { print_container(os, c); return os; }
template <typename T> ostream& operator<<(ostream& os, const set<T>& c) { print_container(os, c); return os; }
template <typename T> ostream& operator<<(ostream& os, const multiset<T>& c) { print_container(os, c); return os; }
template <typename T> ostream& operator<<(ostream& os, const deque<T>& c) { print_container(os, c); return os; }
template <typename T, typename U> ostream& operator<<(ostream& os, const map<T, U>& c) { print_container(os, c); return os; }
template <typename T, typename U> ostream& operator<<(ostream& os, const pair<T, U>& p) { os << "(" << p.first << ", " << p.second << ")"; return os; }

template <typename T> void print(T a, int n, const string& split = " ") { for (int i = 0; i < n; i++) { cout << a[i]; if (i + 1 != n) cout << split; } cout << endl; }
template <typename T> void print2d(T a, int w, int h, int width = -1, int br = 0) { for (int i = 0; i < h; ++i) { for (int j = 0; j < w; ++j) { if (width != -1) cout.width(width); cout << a[i][j] << ' '; } cout << endl; } while (br--) cout << endl; }
template <typename T> void input(T& a, int n) { for (int i = 0; i < n; ++i) cin >> a[i]; }
#define dump(v) (cerr << #v << ": " << v << endl)

#define rep(i, n) for (int i = 0; i < (int)(n); ++i)
#define erep(i, n) for (int i = 0; i <= (int)(n); ++i)
#define all(a) (a).begin(), (a).end()
#define rall(a) (a).rbegin(), (a).rend()
#define clr(a, x) memset(a, x, sizeof(a))
#define sz(a) ((int)(a).size())
#define mp(a, b) make_pair(a, b)
#define ten(n) ((long long)(1e##n))

template <typename T, typename U> void upmin(T& a, const U& b) { a = min<T>(a, b); }
template <typename T, typename U> void upmax(T& a, const U& b) { a = max<T>(a, b); }
template <typename T> void uniq(T& a) { sort(a.begin(), a.end()); a.erase(unique(a.begin(), a.end()), a.end()); }
template <class T> string to_s(const T& a) { ostringstream os; os << a; return os.str(); }
template <class T> T to_T(const string& s) { istringstream is(s); T res; is >> res; return res; }
void fast_io() { cin.tie(0); ios::sync_with_stdio(false); }
bool in_rect(int x, int y, int w, int h) { return 0 <= x && x < w && 0 <= y && y < h; }

typedef long long ll;
typedef pair<int, int> pint;

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



int main()
{
    ll n, h, a, b, c, d, e;
    cin >> n >> h >> a >> b >> c >> d >> e;

    ll res = ten(18);
    for (ll normal = 0; normal <= n; ++ normal)
    {
        ll rem_days = n - normal;
        ll hara = h + normal * b;

        ll low = -1, high = rem_days;
        while (high - low > 1)
        {
            ll mid = (low + high) / 2;
            if (hara + mid * d - (rem_days - mid) * e > 0)
                high = mid;
            else
                low = mid;
        }

        ll cost = a * normal + c * high;
        upmin(res, cost);
    }
    cout << res << endl;
}

Submission Info

Submission Time
Task C - 節制
User takapt
Language C++11 (GCC 4.8.1)
Score 101
Code Size 3854 Byte
Status AC
Exec Time 85 ms
Memory 928 KB

Judge Result

Set Name Subtask1 Subtask2 Subtask3 Subtask4
Score / Max Score 10 / 10 30 / 30 60 / 60 1 / 1
Status
AC × 25
AC × 25
AC × 86
AC × 99
Set Name Test Cases
Subtask1 sample_1.txt, sample_2.txt, sample_3.txt, 01_010.txt, 01_011.txt, 01_020.txt, 01_021.txt, 01_100.txt, 01_101.txt, 01_110.txt, 01_111.txt, 01_200.txt, 01_201.txt, 01_220.txt, 01_221.txt, 01_random01.txt, 01_random02.txt, 01_random03.txt, 01_random04.txt, 01_random05.txt, 01_random06.txt, 01_random07.txt, 01_random08.txt, 01_random09.txt, 01_random10.txt
Subtask2 sample_1.txt, sample_2.txt, sample_3.txt, 02_010.txt, 02_011.txt, 02_020.txt, 02_021.txt, 02_100.txt, 02_101.txt, 02_110.txt, 02_111.txt, 02_200.txt, 02_201.txt, 02_220.txt, 02_221.txt, 02_random01.txt, 02_random02.txt, 02_random03.txt, 02_random04.txt, 02_random05.txt, 02_random06.txt, 02_random07.txt, 02_random08.txt, 02_random09.txt, 02_random10.txt
Subtask3 sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt, 01_010.txt, 01_011.txt, 01_020.txt, 01_021.txt, 01_100.txt, 01_101.txt, 01_110.txt, 01_111.txt, 01_200.txt, 01_201.txt, 01_220.txt, 01_221.txt, 01_random01.txt, 01_random02.txt, 01_random03.txt, 01_random04.txt, 01_random05.txt, 01_random06.txt, 01_random07.txt, 01_random08.txt, 01_random09.txt, 01_random10.txt, 02_010.txt, 02_011.txt, 02_020.txt, 02_021.txt, 02_100.txt, 02_101.txt, 02_110.txt, 02_111.txt, 02_200.txt, 02_201.txt, 02_220.txt, 02_221.txt, 02_random01.txt, 02_random02.txt, 02_random03.txt, 02_random04.txt, 02_random05.txt, 02_random06.txt, 02_random07.txt, 02_random08.txt, 02_random09.txt, 02_random10.txt, 03_010.txt, 03_011.txt, 03_012.txt, 03_020.txt, 03_021.txt, 03_022.txt, 03_100.txt, 03_101.txt, 03_102.txt, 03_110.txt, 03_111.txt, 03_112.txt, 03_200.txt, 03_201.txt, 03_202.txt, 03_220.txt, 03_221.txt, 03_222.txt, 03_random01.txt, 03_random02.txt, 03_random03.txt, 03_random04.txt, 03_random05.txt, 03_random06.txt, 03_random07.txt, 03_random08.txt, 03_random09.txt, 03_random10.txt, 03_random11.txt, 03_random12.txt, 03_random13.txt, 03_random14.txt, 03_random15.txt, 03_random16.txt, 03_random17.txt, 03_random18.txt, 03_random19.txt, 03_random20.txt
Subtask4 01_010.txt, 01_011.txt, 01_020.txt, 01_021.txt, 01_100.txt, 01_101.txt, 01_110.txt, 01_111.txt, 01_200.txt, 01_201.txt, 01_220.txt, 01_221.txt, 01_random01.txt, 01_random02.txt, 01_random03.txt, 01_random04.txt, 01_random05.txt, 01_random06.txt, 01_random07.txt, 01_random08.txt, 01_random09.txt, 01_random10.txt, 02_010.txt, 02_011.txt, 02_020.txt, 02_021.txt, 02_100.txt, 02_101.txt, 02_110.txt, 02_111.txt, 02_200.txt, 02_201.txt, 02_220.txt, 02_221.txt, 02_random01.txt, 02_random02.txt, 02_random03.txt, 02_random04.txt, 02_random05.txt, 02_random06.txt, 02_random07.txt, 02_random08.txt, 02_random09.txt, 02_random10.txt, 03_010.txt, 03_011.txt, 03_012.txt, 03_020.txt, 03_021.txt, 03_022.txt, 03_100.txt, 03_101.txt, 03_102.txt, 03_110.txt, 03_111.txt, 03_112.txt, 03_200.txt, 03_201.txt, 03_202.txt, 03_220.txt, 03_221.txt, 03_222.txt, 03_random01.txt, 03_random02.txt, 03_random03.txt, 03_random04.txt, 03_random05.txt, 03_random06.txt, 03_random07.txt, 03_random08.txt, 03_random09.txt, 03_random10.txt, 03_random11.txt, 03_random12.txt, 03_random13.txt, 03_random14.txt, 03_random15.txt, 03_random16.txt, 03_random17.txt, 03_random18.txt, 03_random19.txt, 03_random20.txt, 04_010.txt, 04_011.txt, 04_020.txt, 04_021.txt, 04_100.txt, 04_101.txt, 04_110.txt, 04_111.txt, 04_200.txt, 04_201.txt, 04_220.txt, 04_221.txt, 04_random01.txt, 04_random02.txt, 04_random03.txt, 04_random04.txt, 04_random05.txt
Case Name Status Exec Time Memory
01_010.txt AC 21 ms 732 KB
01_011.txt AC 20 ms 672 KB
01_020.txt AC 20 ms 728 KB
01_021.txt AC 23 ms 916 KB
01_100.txt AC 21 ms 800 KB
01_101.txt AC 21 ms 800 KB
01_110.txt AC 21 ms 672 KB
01_111.txt AC 21 ms 800 KB
01_200.txt AC 20 ms 800 KB
01_201.txt AC 21 ms 928 KB
01_220.txt AC 21 ms 800 KB
01_221.txt AC 21 ms 744 KB
01_random01.txt AC 21 ms 804 KB
01_random02.txt AC 21 ms 924 KB
01_random03.txt AC 21 ms 676 KB
01_random04.txt AC 21 ms 920 KB
01_random05.txt AC 23 ms 804 KB
01_random06.txt AC 20 ms 924 KB
01_random07.txt AC 21 ms 796 KB
01_random08.txt AC 20 ms 924 KB
01_random09.txt AC 21 ms 796 KB
01_random10.txt AC 21 ms 924 KB
02_010.txt AC 21 ms 672 KB
02_011.txt AC 21 ms 924 KB
02_020.txt AC 21 ms 796 KB
02_021.txt AC 22 ms 800 KB
02_100.txt AC 20 ms 796 KB
02_101.txt AC 19 ms 800 KB
02_110.txt AC 21 ms 804 KB
02_111.txt AC 21 ms 928 KB
02_200.txt AC 20 ms 796 KB
02_201.txt AC 23 ms 748 KB
02_220.txt AC 22 ms 800 KB
02_221.txt AC 21 ms 924 KB
02_random01.txt AC 21 ms 804 KB
02_random02.txt AC 20 ms 672 KB
02_random03.txt AC 20 ms 920 KB
02_random04.txt AC 21 ms 804 KB
02_random05.txt AC 21 ms 796 KB
02_random06.txt AC 21 ms 804 KB
02_random07.txt AC 21 ms 928 KB
02_random08.txt AC 21 ms 928 KB
02_random09.txt AC 20 ms 800 KB
02_random10.txt AC 21 ms 800 KB
03_010.txt AC 22 ms 736 KB
03_011.txt AC 21 ms 800 KB
03_012.txt AC 21 ms 796 KB
03_020.txt AC 21 ms 924 KB
03_021.txt AC 22 ms 736 KB
03_022.txt AC 21 ms 796 KB
03_100.txt AC 20 ms 796 KB
03_101.txt AC 21 ms 736 KB
03_102.txt AC 22 ms 924 KB
03_110.txt AC 21 ms 800 KB
03_111.txt AC 21 ms 676 KB
03_112.txt AC 21 ms 804 KB
03_200.txt AC 22 ms 920 KB
03_201.txt AC 21 ms 804 KB
03_202.txt AC 20 ms 796 KB
03_220.txt AC 20 ms 800 KB
03_221.txt AC 21 ms 700 KB
03_222.txt AC 21 ms 796 KB
03_random01.txt AC 21 ms 704 KB
03_random02.txt AC 23 ms 764 KB
03_random03.txt AC 21 ms 800 KB
03_random04.txt AC 20 ms 916 KB
03_random05.txt AC 21 ms 672 KB
03_random06.txt AC 23 ms 804 KB
03_random07.txt AC 21 ms 804 KB
03_random08.txt AC 23 ms 768 KB
03_random09.txt AC 21 ms 704 KB
03_random10.txt AC 20 ms 928 KB
03_random11.txt AC 21 ms 720 KB
03_random12.txt AC 20 ms 800 KB
03_random13.txt AC 21 ms 800 KB
03_random14.txt AC 21 ms 800 KB
03_random15.txt AC 21 ms 800 KB
03_random16.txt AC 20 ms 796 KB
03_random17.txt AC 21 ms 732 KB
03_random18.txt AC 21 ms 804 KB
03_random19.txt AC 20 ms 924 KB
03_random20.txt AC 20 ms 808 KB
04_010.txt AC 71 ms 792 KB
04_011.txt AC 72 ms 672 KB
04_020.txt AC 69 ms 800 KB
04_021.txt AC 72 ms 808 KB
04_100.txt AC 74 ms 804 KB
04_101.txt AC 61 ms 796 KB
04_110.txt AC 55 ms 736 KB
04_111.txt AC 53 ms 916 KB
04_200.txt AC 28 ms 732 KB
04_201.txt AC 22 ms 804 KB
04_220.txt AC 36 ms 808 KB
04_221.txt AC 64 ms 804 KB
04_random01.txt AC 23 ms 808 KB
04_random02.txt AC 31 ms 808 KB
04_random03.txt AC 46 ms 676 KB
04_random04.txt AC 85 ms 796 KB
04_random05.txt AC 35 ms 808 KB
sample_1.txt AC 21 ms 796 KB
sample_2.txt AC 22 ms 800 KB
sample_3.txt AC 21 ms 800 KB
sample_4.txt AC 21 ms 804 KB