code festival 2014 上海

Submission #595289

Source codeソースコード

#include<cstdio>
#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
#include<cstring>
using namespace std;

typedef long long LL;
typedef vector<int> VI;

#define REP(i,n) for(int i=0, i##_len=(n); i<i##_len; ++i)
#define EACH(i,c) for(__typeof((c).begin()) i=(c).begin(),i##_end=(c).end();i!=i##_end;++i)
#define eprintf(s...) fprintf(stderr, s)

template<class T> inline void amin(T &a, const T &b) { if (b<a) a=b; }
template<class T> inline void amax(T &a, const T &b) { if (a<b) a=b; }


double E[4][101][101][101];
const double INF = 1e12;

int A, B, C;
double pa, pb, pc;
int main() {
    scanf("%d%d%d", &A, &B, &C);
    scanf("%lf%lf%lf", &pa, &pb, &pc);
    pa /= 100; pb /= 100; pc /= 100;
    REP (a, A+1) REP (b, B+1) REP (c, C+1) {
	if (a+b+c == 0) {
	    continue;
	}


	REP (i, 4) E[i][a][b][c] = INF;
	if (a && pa > 0) amin(E[0][a][b][c], 1/pa + E[1][a-1][b][c]);
	if (b && pb > 0) amin(E[0][a][b][c], 1/pb + E[1][a][b-1][c]);
	if (c && pc > 0) amin(E[0][a][b][c], 1/pc + E[1][a][b][c-1]);

	if (a && pa > 0) amin(E[1][a][b][c], pa * E[2][a-1][b][c] + (1-pa)*E[0][a][b][c]);
	if (b && pb > 0) amin(E[1][a][b][c], pb * E[2][a][b-1][c] + (1-pb)*E[0][a][b][c]);
	if (c && pc > 0) amin(E[1][a][b][c], pc * E[2][a][b][c-1] + (1-pc)*E[0][a][b][c]);

	if (a && pa > 0) amin(E[2][a][b][c], pa * E[0][a-1][b][c] + (1-pa)*E[0][a][b][c]);
	if (b && pb > 0) amin(E[2][a][b][c], pb * E[3][a][b-1][c] + (1-pb)*E[0][a][b][c]);
	if (c && pc > 0) amin(E[2][a][b][c], pc * E[3][a][b][c-1] + (1-pc)*E[0][a][b][c]);

	if (a && pa > 0) amin(E[3][a][b][c], pa * E[0][a-1][b][c] + (1-pa)*E[0][a][b][c]);
	if (b && pb > 0) amin(E[3][a][b][c], pb * E[0][a][b-1][c] + (1-pb)*E[0][a][b][c]);
	if (c && pc > 0) amin(E[3][a][b][c], pc * E[0][a][b][c-1] + (1-pc)*E[0][a][b][c]);

    }

    printf("%.12f\n", E[0][A][B][C]);
    return 0;
}

Submission

Task問題 E - Game
User nameユーザ名 n
Created time投稿日時
Language言語 C++ (G++ 4.6.4)
Status状態 AC
Score得点 100
Source lengthソースコード長 1905 Byte
File nameファイル名
Exec time実行時間 154 ms
Memory usageメモリ使用量 33304 KB

Compiler messageコンパイルメッセージ

./Main.cpp: In function ‘int main()’:
./Main.cpp:26:32: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
./Main.cpp:27:38: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]

Test case

Set

Set name Score得点 / Max score Cases
Sample - subtask0_sample_01.txt,subtask0_sample_02.txt,subtask0_sample_03.txt,subtask0_sample_04.txt,subtask0_sample_05.txt
All 100 / 100 subtask0_sample_01.txt,subtask0_sample_02.txt,subtask0_sample_03.txt,subtask0_sample_04.txt,subtask0_sample_05.txt,subtask1_manual_01.txt,subtask1_manual_02.txt,subtask1_manual_03.txt,subtask1_manual_04.txt,subtask1_manual_05.txt,subtask1_manual_06.txt,subtask1_manual_07.txt,subtask1_random_01.txt,subtask1_random_02.txt,subtask1_random_03.txt,subtask1_random_04.txt,subtask1_random_05.txt,subtask1_random_06.txt,subtask1_random_07.txt,subtask1_random_08.txt,subtask1_random_09.txt,subtask1_random_10.txt

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
subtask0_sample_01.txt AC 31 ms 1160 KB
subtask0_sample_02.txt AC 133 ms 33304 KB
subtask0_sample_03.txt AC 29 ms 1160 KB
subtask0_sample_04.txt AC 31 ms 1096 KB
subtask0_sample_05.txt AC 28 ms 1612 KB
subtask1_manual_01.txt AC 27 ms 976 KB
subtask1_manual_02.txt AC 26 ms 1044 KB
subtask1_manual_03.txt AC 27 ms 1044 KB
subtask1_manual_04.txt AC 149 ms 33104 KB
subtask1_manual_05.txt AC 154 ms 33228 KB
subtask1_manual_06.txt AC 115 ms 32808 KB
subtask1_manual_07.txt AC 126 ms 28484 KB
subtask1_random_01.txt AC 84 ms 22980 KB
subtask1_random_02.txt AC 43 ms 6088 KB
subtask1_random_03.txt AC 53 ms 11204 KB
subtask1_random_04.txt AC 32 ms 1824 KB
subtask1_random_05.txt AC 46 ms 6344 KB
subtask1_random_06.txt AC 81 ms 21188 KB
subtask1_random_07.txt AC 46 ms 7500 KB
subtask1_random_08.txt AC 49 ms 6952 KB
subtask1_random_09.txt AC 45 ms 7364 KB
subtask1_random_10.txt AC 40 ms 5576 KB