結果
| 問題 |
No.320 眠れない夜に
|
| コンテスト | |
| ユーザー |
threepipes_s
|
| 提出日時 | 2015-12-03 06:19:08 |
| 言語 | Java (openjdk 23) |
| 結果 |
AC
|
| 実行時間 | 137 ms / 2,000 ms |
| コード長 | 619 bytes |
| コンパイル時間 | 2,291 ms |
| コンパイル使用メモリ | 74,716 KB |
| 実行使用メモリ | 41,576 KB |
| 最終ジャッジ日時 | 2024-09-14 08:22:10 |
| 合計ジャッジ時間 | 8,317 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 31 |
ソースコード
import java.util.Scanner;
public class Main {
public static void main(String[] args)
{(new Solve()).solve();}
}
class Solve{
void solve(){
Scanner in = new Scanner(System.in);
int n = in.nextInt();
long m = in.nextLong();
System.out.println(getMistake(n, m));
in.close();
}
int getMistake(int n, long m){
long[] fib = new long[n];
fib[0] = fib[1] = 1;
for(int i=2; i<n; i++){
fib[i] = fib[i-1]+fib[i-2];
}
int count = 0;
long diff = fib[n-1]-m;
for(int i=n-3; i>=0; i--){
if(diff>=fib[i]){
diff -= fib[i];
count++;
}
if(diff==0) return count;
}
return -1;
}
}
threepipes_s