Submission #6110228
Source Code Expand
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include <ctype.h>
#include <stdint.h>
#include <string.h>
#include <wchar.h>
#include <math.h>
#define N_MAX (100)
#define P_MAX (100)
#define DP_ARRAY_SIZE (N_MAX * P_MAX / 32 + 1)
#define MIN(a, b) ((a) < (b) ? (a) : (b))
#define MAX(a, b) ((a) > (b) ? (a) : (b))
#define ABS(a) ((a) < 0 ? -(a) : (a))
#define ABSS(a, b) ((a) > (b) ? (a) - (b) : (b) - (a))
int compare_sz_desc(const void* a, const void* b) {
return *((size_t*)a) > * ((size_t*)b) ? -1 : 1;
}
int compare_i64_asc(const void* a, const void* b) {
return *((int64_t*)a) < *((int64_t*)b) ? -1 : 1;
}
int compare_c_asc(const void* a, const void* b) {
return *((char*)a) < *((char*)b) ? -1 : 1;
}
int compare_c_desc(const void* a, const void* b) {
return *((char*)a) > * ((char*)b) ? -1 : 1;
}
int compare_f(const void* a, const void* b) {
return *((int64_t*)a) < *((int64_t*)b) ? -1 : 1;
}
int compare_f2(const void* a, const void* b) {
return *((uint64_t*)a) > * ((uint64_t*)b) ? -1 : 1;
}
static size_t comb(const size_t n, const size_t r) {
size_t result = 1;
for (size_t i = 0; i < r; i++) {
result *= n - i;
result /= i + 1;
}
return result;
}
static uint64_t combU64(const uint64_t n, const uint64_t r) {
uint64_t result = 1;
for (uint64_t i = 0; i < r; i++) {
result *= n - i;
result /= i + 1;
}
return result;
}
static uint64_t gcdU64(uint64_t m, uint64_t n)
{
uint64_t temp;
while (m % n != 0) {
temp = n;
n = m % n;
m = temp;
}
return n;
}
static size_t gcdZu(size_t m, size_t n) {
size_t temp;
while (m % n != 0) {
temp = n;
n = m % n;
m = temp;
}
return n;
}
int main(void) {
uint64_t Q, H, S, D, N;
scanf("%"PRIu64" %"PRIu64" %"PRIu64" %"PRIu64"\n%"PRIu64, &Q, &H, &S, &D, &N);
uint64_t min = 4 * Q * N;
if (2 * H * N < min) {
min = 2 * H * N;
}
if (S * N < min) {
min = S * N;
}
if (N / 2 * D + (N % 2) * 4 * Q < min) {
min = N / 2 * D + (N % 2) * 4 * Q;
}
if (N / 2 * D + (N % 2) * 2 * H < min) {
min = N / 2 * D + (N % 2) * 2 * H;
}
if (N / 2 * D + (N % 2) * S < min) {
min = N / 2 * D + (N % 2) * S;
}
printf("%"PRIu64, min);
return 0;
}
Submission Info
Submission Time |
|
Task |
A - Ice Tea Store |
User |
Tommy6 |
Language |
C (Clang 3.8.0) |
Score |
300 |
Code Size |
2512 Byte |
Status |
AC |
Exec Time |
1 ms |
Memory |
128 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
300 / 300 |
Status |
|
|
Set Name |
Test Cases |
Sample |
sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt |
All |
sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt |
Case Name |
Status |
Exec Time |
Memory |
sample_01.txt |
AC |
1 ms |
128 KB |
sample_02.txt |
AC |
1 ms |
128 KB |
sample_03.txt |
AC |
1 ms |
128 KB |
sample_04.txt |
AC |
1 ms |
128 KB |
subtask_1_01.txt |
AC |
1 ms |
128 KB |
subtask_1_02.txt |
AC |
1 ms |
128 KB |
subtask_1_03.txt |
AC |
1 ms |
128 KB |
subtask_1_04.txt |
AC |
1 ms |
128 KB |
subtask_1_05.txt |
AC |
1 ms |
128 KB |
subtask_1_06.txt |
AC |
1 ms |
128 KB |
subtask_1_07.txt |
AC |
1 ms |
128 KB |
subtask_1_08.txt |
AC |
1 ms |
128 KB |
subtask_1_09.txt |
AC |
1 ms |
128 KB |
subtask_1_10.txt |
AC |
1 ms |
128 KB |
subtask_1_11.txt |
AC |
1 ms |
128 KB |
subtask_1_12.txt |
AC |
1 ms |
128 KB |
subtask_1_13.txt |
AC |
1 ms |
128 KB |
subtask_1_14.txt |
AC |
1 ms |
128 KB |
subtask_1_15.txt |
AC |
1 ms |
128 KB |