前提・実現したいこと
AtCoder beginner215 B問題でテストコードは通るが、while文のところでWA判定が出ているようなので
どこが問題なのか教えて欲しいです。
AtCoder beginner215 B問題
https://atcoder.jp/contests/abc215/tasks/abc215_b
を解いています。
該当のソースコードの中の以下の部分でWA判定(WA (Wrong Answer) 誤答です。提出したプログラムの出力は正しくありません。)がでているようです。
Java
1 while(result < n-result){ 2 result = result * 2; 3 k++; 4 }
以下のコードに修正するとAC判定がでて合格となりました。
Java
1 while(result*2 <= n){ 2 result = result * 2; 3 k++; 4 }
どうして誤答となっているのかわからないので、ご教授いただきたいです。
初歩的な質問で申し訳ありませんがよろしくお願いします。
▼判定について
https://atcoder.jp/contests/abc074/glossary?lang=ja
該当のソースコード全文
Java
1import java.util.Scanner; 2 3public class Main{ 4 public static void main(String[] args){ 5 Scanner scan = new Scanner(System.in); 6 long n = scan.nextLong(); 7 long result = 1; 8 int k = 0; 9 10 while(result < n-result){ //ここでエラーが出ているようです 11 result = result * 2; 12 k++; 13 } 14 15 System.out.println(k); 16 } 17} 18
試したこと
実際に6,1,1000000000000000000でコードテストを行いましたが、
終了コード0となりエラーが出ませんでした。
▼コードテストページ
https://atcoder.jp/contests/abc215/custom_test
補足情報(FW/ツールのバージョンなど)
MacOS 10.15.7
Google Chrome 94.0.4606.61
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/03 00:58