灵异错误

B2077 角谷猜想

Qtl123 @ 2024-02-22 15:02:18

#include<bits/stdc++.h>
using namespace std;
long long a;
int main(){
    cin>>a;
    while(a!=1){
        if(a%2==1){
            printf("%d*3+1=%d\n",a,a*3+1);
            a=a*3+1;
        }else{
            printf("%d/2=%d\n",a,a/2);
            a/=2;
        }
    }
    printf("End");
    return 0;
}

不是这个代码应该是没有问题的呀!!
为什么还是会WA???
改的几乎不能再改了
在线求助


by Remarks @ 2024-02-22 15:07:30

@Qtl123 您知道给 a 开 long long,却不给printf 中的 %d 加 ll


by Qtl123 @ 2024-02-22 15:09:42

@xiaozengX 以AC
献上壶关


by luogu10086 @ 2024-02-22 15:10:28

死因:%d


by ZMQ_Ink6556 @ 2024-02-22 15:30:17

或许以后用 \texttt{cout} 就能避免这样的问题了(保留小数的题除外)


|