#28675: c++ 測試AC,送出則WA無輸出


los2516lir@gmail.com (八代洛克)

學校 : 不指定學校
編號 : 70315
來源 : [61.64.0.185]
最後登入時間 :
2022-01-09 20:55:57
e351. And 運算 -- π | From: [61.64.0.185] | 發表日期 : 2021-12-26 12:30

 

請問是我哪裡出了問題?

 

#include<iostream>

using namespace std;

 

int main(){

int a, b;

while(cin >> a >> b){

int c = 0;

for(int i = 62; i >= 0; i--){

if((a & (1 << i)) == (b & (1 << i)))

c += (b & (1 << i));

else break;

}

cout << c << endl;

}

return 0;

}

 
#28677: Re:c++ 測試AC,送出則WA無輸出


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.9.74.255]
最後登入時間 :
2024-10-14 22:20:08
e351. And 運算 -- π | From: [110.26.106.85] | 發表日期 : 2021-12-26 16:55

 

請問是我哪裡出了問題?

 

#include

using namespace std;

 

int main(){

int a, b;

while(cin >> a >> b){

int c = 0;

for(int i = 62; i >= 0; i--){

if((a & (1 << i)) == (b & (1 << i)))

c += (b & (1 << i));

else break;

}

cout << c << endl;

}

return 0;

}


最大a,b<2^64,所以你用int裝不下,連while迴圈都進不去,要用unsigned long long

 
ZeroJudge Forum