結果
| 問題 |
No.3 ビットすごろく
|
| ユーザー |
shiyo1023
|
| 提出日時 | 2019-09-02 05:51:34 |
| 言語 | Java (openjdk 23) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 846 bytes |
| コンパイル時間 | 2,045 ms |
| コンパイル使用メモリ | 74,944 KB |
| 実行使用メモリ | 41,544 KB |
| 最終ジャッジ日時 | 2024-11-30 21:54:56 |
| 合計ジャッジ時間 | 7,524 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 18 WA * 15 |
ソースコード
import java.util.Scanner;
public class Main {
private static int N;
private static int min = -1;
private static boolean flag[] = new boolean[10000];
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
N = sc.nextInt();
dfs(1, 1);
System.out.println(min);
}
private static void dfs(int a, int c){
if(flag[a-1] == false){
flag[a-1] = true;
}else{
return;
}
if(min != -1 && c>=min){
return;
}
if(a==N){
min = c;
return;
}
int bit = Integer.bitCount(a);
if(a+bit <= N){
dfs(a+bit, c+1);
}
if(a-bit > 1){
dfs(a-bit, c+1);
}
}
}
shiyo1023