結果

問題 No.73 helloworld
ユーザー bal4ubal4u
提出日時 2019-05-11 16:23:16
言語 C
(gcc 12.3.0)
結果
AC  
実行時間 1 ms / 5,000 ms
コード長 518 bytes
コンパイル時間 103 ms
コンパイル使用メモリ 29,004 KB
実行使用メモリ 4,380 KB
最終ジャッジ日時 2023-09-14 18:11:52
合計ジャッジ時間 852 ms
ジャッジサーバーID
(参考情報)
judge14 / judge12
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 0 ms
4,376 KB
testcase_01 AC 0 ms
4,380 KB
testcase_02 AC 0 ms
4,376 KB
testcase_03 AC 1 ms
4,380 KB
testcase_04 AC 1 ms
4,376 KB
testcase_05 AC 1 ms
4,376 KB
testcase_06 AC 0 ms
4,380 KB
testcase_07 AC 1 ms
4,376 KB
testcase_08 AC 0 ms
4,376 KB
testcase_09 AC 1 ms
4,376 KB
testcase_10 AC 1 ms
4,376 KB
testcase_11 AC 1 ms
4,380 KB
testcase_12 AC 0 ms
4,376 KB
testcase_13 AC 0 ms
4,376 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

// yukicoder: No.73 helloworld
// 2019.5.11 bal4u

#include <stdio.h>

char he[] = "helloworld";
int a[26], f[26];

int main()
{
	int i;
	char *p;
	long long ans;

	p = he; while (*p) a[*p++ - 'a']++;
	for (i = 0; i < 26; i++) scanf("%d", f+i);
	ans = 1;
	for (i = 0; i < 26; i++) if (a[i]) {
		if (f[i] < a[i]) { ans = 0; break; }
		if (a[i] == 1) ans *= f[i];
		else if (a[i] == 2) ans *= f[i]/2 * (f[i]-f[i]/2);
		else {
			int k = f[i]/3; ans *= k*(f[i]-k)*(f[i]-k-1)/2;
		}
	}
	printf("%lld\n", ans);
	return 0;
}
0