Submission #4036659
Source Code Expand
#include <numeric>
#include <algorithm>
#include <cstring>
#include <vector>
#include <cstdio>
#include <iostream>
using namespace std;
int D, T, C[8], A[8];
void input() {
scanf(" %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d",
&D, &T, &C[0], &C[1], &C[2], &C[3], &C[4], &C[5], &C[6], &C[7],
&A[0], &A[1], &A[2], &A[3], &A[4], &A[5], &A[6], &A[7]);
}
void fill(int i) { cout << "fill " << i+1 << endl; }
void move(int i, int j) { cout << "move " << i+1 << ' ' << j+1 << endl; }
void change(int i) { cout << "change " << i+1 << endl; }
void pass() { cout << "pass" << endl; }
void sell(vector<int> &v) {
cout << "sell " << v.size();
for (int i : v) cout << ' ' << i+1;
cout << endl;
}
bool sell_if_possible() {
int buf[51] = {};
memset(buf, -1, sizeof(buf));
buf[0] = 0;
for (int i = 0; i < 8; i++) {
if (A[i] == 0) continue;
for (int a = D - A[i]; a >= 0; a--)
if (buf[a] >= 0 && buf[a+A[i]] < 0) buf[a+A[i]] = i;
}
if (buf[D] < 0) return false;
vector<int> v;
int a = D;
while (a > 0) { v.push_back(buf[a]); a -= A[buf[a]]; }
sell(v);
return true;
}
int main() {
int CNT = 1000;
while (CNT--) {
int to_fill = -1, c_max = 3, *p;
input();
if (accumulate(C, C+8, 0) < 50) c_max = 4;
if (D > 32 && sell_if_possible()) goto next;
for (int i = 0; i < 8; i++) {
if (A[i] == 0 && C[i] > c_max) { c_max = C[i]; to_fill = i; }
}
if (to_fill >= 0) { fill(to_fill); goto next; }
p = min_element(C, C+8);
if (*p <= c_max) {
change(p-C); goto next;
}
pass();
next:;
}
}
Submission Info
Submission Time |
|
Task |
A - 石油王Xの憂鬱 |
User |
kozima |
Language |
C++14 (GCC 5.4.1) |
Score |
7116686 |
Code Size |
1769 Byte |
Status |
AC |
Exec Time |
55 ms |
Memory |
724 KB |
Compile Error
./Main.cpp: In function ‘void input()’:
./Main.cpp:14:66: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
&A[0], &A[1], &A[2], &A[3], &A[4], &A[5], &A[6], &A[7]);
^
Judge Result
Set Name |
test_01 |
test_02 |
test_03 |
test_04 |
test_05 |
test_06 |
test_07 |
test_08 |
test_09 |
test_10 |
test_11 |
test_12 |
test_13 |
test_14 |
test_15 |
test_16 |
test_17 |
test_18 |
test_19 |
test_20 |
test_21 |
test_22 |
test_23 |
test_24 |
test_25 |
test_26 |
test_27 |
test_28 |
test_29 |
test_30 |
test_31 |
test_32 |
test_33 |
test_34 |
test_35 |
test_36 |
test_37 |
test_38 |
test_39 |
test_40 |
test_41 |
test_42 |
test_43 |
test_44 |
test_45 |
test_46 |
test_47 |
test_48 |
test_49 |
test_50 |
Score / Max Score |
130238 / 417500 |
145215 / 417500 |
148235 / 417500 |
142672 / 417500 |
145742 / 417500 |
155383 / 417500 |
153081 / 417500 |
141862 / 417500 |
145557 / 417500 |
143720 / 417500 |
151068 / 417500 |
143181 / 417500 |
148538 / 417500 |
144569 / 417500 |
138436 / 417500 |
144821 / 417500 |
134202 / 417500 |
134407 / 417500 |
147801 / 417500 |
139332 / 417500 |
142842 / 417500 |
140745 / 417500 |
138587 / 417500 |
144458 / 417500 |
136083 / 417500 |
138871 / 417500 |
141291 / 417500 |
153069 / 417500 |
148274 / 417500 |
142475 / 417500 |
149369 / 417500 |
139034 / 417500 |
144287 / 417500 |
137866 / 417500 |
148834 / 417500 |
142944 / 417500 |
138115 / 417500 |
135512 / 417500 |
139304 / 417500 |
136419 / 417500 |
145283 / 417500 |
141952 / 417500 |
140507 / 417500 |
132830 / 417500 |
148602 / 417500 |
148542 / 417500 |
140601 / 417500 |
125161 / 417500 |
131673 / 417500 |
145096 / 417500 |
Status |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Set Name |
Test Cases |
test_01 |
subtask_01_01.txt |
test_02 |
subtask_01_02.txt |
test_03 |
subtask_01_03.txt |
test_04 |
subtask_01_04.txt |
test_05 |
subtask_01_05.txt |
test_06 |
subtask_01_06.txt |
test_07 |
subtask_01_07.txt |
test_08 |
subtask_01_08.txt |
test_09 |
subtask_01_09.txt |
test_10 |
subtask_01_10.txt |
test_11 |
subtask_01_11.txt |
test_12 |
subtask_01_12.txt |
test_13 |
subtask_01_13.txt |
test_14 |
subtask_01_14.txt |
test_15 |
subtask_01_15.txt |
test_16 |
subtask_01_16.txt |
test_17 |
subtask_01_17.txt |
test_18 |
subtask_01_18.txt |
test_19 |
subtask_01_19.txt |
test_20 |
subtask_01_20.txt |
test_21 |
subtask_01_21.txt |
test_22 |
subtask_01_22.txt |
test_23 |
subtask_01_23.txt |
test_24 |
subtask_01_24.txt |
test_25 |
subtask_01_25.txt |
test_26 |
subtask_01_26.txt |
test_27 |
subtask_01_27.txt |
test_28 |
subtask_01_28.txt |
test_29 |
subtask_01_29.txt |
test_30 |
subtask_01_30.txt |
test_31 |
subtask_01_31.txt |
test_32 |
subtask_01_32.txt |
test_33 |
subtask_01_33.txt |
test_34 |
subtask_01_34.txt |
test_35 |
subtask_01_35.txt |
test_36 |
subtask_01_36.txt |
test_37 |
subtask_01_37.txt |
test_38 |
subtask_01_38.txt |
test_39 |
subtask_01_39.txt |
test_40 |
subtask_01_40.txt |
test_41 |
subtask_01_41.txt |
test_42 |
subtask_01_42.txt |
test_43 |
subtask_01_43.txt |
test_44 |
subtask_01_44.txt |
test_45 |
subtask_01_45.txt |
test_46 |
subtask_01_46.txt |
test_47 |
subtask_01_47.txt |
test_48 |
subtask_01_48.txt |
test_49 |
subtask_01_49.txt |
test_50 |
subtask_01_50.txt |
Case Name |
Status |
Exec Time |
Memory |
subtask_01_01.txt |
AC |
51 ms |
720 KB |
subtask_01_02.txt |
AC |
54 ms |
720 KB |
subtask_01_03.txt |
AC |
53 ms |
720 KB |
subtask_01_04.txt |
AC |
48 ms |
716 KB |
subtask_01_05.txt |
AC |
53 ms |
716 KB |
subtask_01_06.txt |
AC |
50 ms |
720 KB |
subtask_01_07.txt |
AC |
51 ms |
720 KB |
subtask_01_08.txt |
AC |
52 ms |
720 KB |
subtask_01_09.txt |
AC |
53 ms |
720 KB |
subtask_01_10.txt |
AC |
52 ms |
592 KB |
subtask_01_11.txt |
AC |
52 ms |
720 KB |
subtask_01_12.txt |
AC |
50 ms |
716 KB |
subtask_01_13.txt |
AC |
52 ms |
724 KB |
subtask_01_14.txt |
AC |
51 ms |
716 KB |
subtask_01_15.txt |
AC |
51 ms |
592 KB |
subtask_01_16.txt |
AC |
51 ms |
592 KB |
subtask_01_17.txt |
AC |
47 ms |
720 KB |
subtask_01_18.txt |
AC |
54 ms |
720 KB |
subtask_01_19.txt |
AC |
53 ms |
592 KB |
subtask_01_20.txt |
AC |
49 ms |
716 KB |
subtask_01_21.txt |
AC |
49 ms |
592 KB |
subtask_01_22.txt |
AC |
51 ms |
720 KB |
subtask_01_23.txt |
AC |
51 ms |
720 KB |
subtask_01_24.txt |
AC |
53 ms |
720 KB |
subtask_01_25.txt |
AC |
51 ms |
720 KB |
subtask_01_26.txt |
AC |
50 ms |
720 KB |
subtask_01_27.txt |
AC |
53 ms |
724 KB |
subtask_01_28.txt |
AC |
49 ms |
720 KB |
subtask_01_29.txt |
AC |
50 ms |
588 KB |
subtask_01_30.txt |
AC |
53 ms |
724 KB |
subtask_01_31.txt |
AC |
55 ms |
720 KB |
subtask_01_32.txt |
AC |
51 ms |
660 KB |
subtask_01_33.txt |
AC |
52 ms |
712 KB |
subtask_01_34.txt |
AC |
52 ms |
720 KB |
subtask_01_35.txt |
AC |
52 ms |
716 KB |
subtask_01_36.txt |
AC |
51 ms |
720 KB |
subtask_01_37.txt |
AC |
50 ms |
720 KB |
subtask_01_38.txt |
AC |
51 ms |
720 KB |
subtask_01_39.txt |
AC |
51 ms |
720 KB |
subtask_01_40.txt |
AC |
53 ms |
720 KB |
subtask_01_41.txt |
AC |
53 ms |
720 KB |
subtask_01_42.txt |
AC |
52 ms |
596 KB |
subtask_01_43.txt |
AC |
54 ms |
716 KB |
subtask_01_44.txt |
AC |
47 ms |
720 KB |
subtask_01_45.txt |
AC |
52 ms |
720 KB |
subtask_01_46.txt |
AC |
52 ms |
720 KB |
subtask_01_47.txt |
AC |
48 ms |
724 KB |
subtask_01_48.txt |
AC |
53 ms |
724 KB |
subtask_01_49.txt |
AC |
52 ms |
592 KB |
subtask_01_50.txt |
AC |
52 ms |
720 KB |