#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
//電視有 100 個頻道,號碼為 0 到 99。它們是循環的,也就是從 99 台再按一下 △ 就會回到第 0 台。
//輸入現在正在看的頻道和我要切過去的頻道,它便告訴我最少需要按幾次按鈕。
int main() {
int a, b;
while (cin >> a >> b) {
if (a == -1 || b == -1) break; //-1 -1 結束輸入
if (abs(a - b) == 99) cout << "1" << endl; //從 99 台再按一下 △ 就會回到第 0 台
else cout << min(abs(a - b), min(abs(a - 99) + b + 1, abs(b - 99) + a + 1)) << endl;
} //有三種情況,ab間為最小距離、a離99近再加上b、b離99近再加上a(+1是因為0沒有算到)
} //比如1和97的最小次數是98 99 0 1四次但實際算數99-97+1為三次少算0這個數字
有人做出來的加法器沒有進位機制,也就是4+6會等於2
因為
0100
+0110
0010 缺少進位=>2
我們現在要模擬它這種加法器去做運算,input給兩個數字要運用這種加法器去算出結果(output)
用XOR來寫,因為1+1會輸出0
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a,b ;
while(cin>>a>>b){
cout<<(a^b)<<endl ;
}
return 0;
}
30天挑戰終於完成了! 雖然寫完30天的UVA程式依舊還是不如那些大神...但對題目更加熟悉,看到題目不再這麼害怕,也因為每天規定自己挑戰1-3題,寫程式能力比以往更好了!