結果
| 問題 |
No.73 helloworld
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2014-11-21 10:31:20 |
| 言語 | Java (openjdk 23) |
| 結果 |
AC
|
| 実行時間 | 122 ms / 5,000 ms |
| コード長 | 990 bytes |
| コンパイル時間 | 4,275 ms |
| コンパイル使用メモリ | 77,396 KB |
| 実行使用メモリ | 41,524 KB |
| 最終ジャッジ日時 | 2024-06-28 21:55:46 |
| 合計ジャッジ時間 | 6,266 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 14 |
ソースコード
import java.util.Scanner;
public class Yukicoder73 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] alpha = new int[26];
for (int i = 0; i < 26; i++) alpha[i] = sc.nextInt();
long maxH = -1, maxO, res = 0;
if (alpha['h' - 'a'] > 0 && alpha['e' - 'a'] > 0 && alpha['l' - 'a'] > 2 && alpha['o' - 'a'] > 1 && alpha['w' - 'a'] > 0 && alpha['r' - 'a'] > 0 && alpha['d' - 'a'] > 0) {
for (int i = 2; i < alpha['l' - 'a']; i++) maxH = Math.max(cmb(i, 2) * (alpha['l' - 'a'] - i), maxH);
maxO = (long) (Math.ceil(alpha['o' - 'a'] / 2.0) * Math.floor(alpha['o' - 'a'] / 2.0));
res = maxH * maxO * alpha['h' - 'a'] * alpha['e' - 'a'] * alpha['w' - 'a'] * alpha['r' - 'a'] * alpha['d' - 'a'];
}
System.out.println(res);
}
static long cmb(int n, int m) {
long c = 1;
m = (n - m < m ? n - m : m);
for (int ns = n - m + 1, ms = 1; ms <= m; ns++, ms++) {
c *= ns;
c /= ms;
}
return c;
}
}