結果
| 問題 |
No.509 塗りつぶしツール
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2017-10-30 21:23:01 |
| 言語 | Java (openjdk 23) |
| 結果 |
AC
|
| 実行時間 | 130 ms / 2,000 ms |
| コード長 | 1,195 bytes |
| コンパイル時間 | 3,651 ms |
| コンパイル使用メモリ | 79,468 KB |
| 実行使用メモリ | 41,368 KB |
| 最終ジャッジ日時 | 2024-11-22 10:56:23 |
| 合計ジャッジ時間 | 8,392 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 27 |
ソースコード
package yukicoder;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Scanner;
public class No509 {
char[] nC;
HashSet<Character> more1 = new HashSet<>();
public static void main(String[] args) {
No509 main = new No509();
main.run();
}
private void run() {
String n = new Scanner(System.in).next();
nC = n.toCharArray();
more1.addAll(Arrays.asList('0', '4', '6', '9'));
int res, res2;
if((res= p1()) < (res2 = p2())) {
System.out.println(res);
} else {
System.out.println(res2);
}
}
private int p1() {
int cnt = nC.length + 1;
for(char each : nC) {
if( more1.contains(each) ) cnt++;
if(each == '8') cnt += 2;
}
return cnt + nC.length;
}
private int p2() {
int cnt = 1;
for(char each : nC) {
if( more1.contains(each) ) cnt++;
if(each == '8') cnt += 2;
}
cnt += nC.length + 1;
for(char each : nC) {
if( more1.contains(each) ) cnt++;
if(each == '8') cnt += 2;
}
return cnt;
}
}