#birthday0410a. [birthday0410_a]A + B
[birthday0410_a]A + B
找出一下程序的 hack 数据。
一、
#include <iostream>
using namespace std;
int main()
{
int A, B;
while(cin >> A >> B, A+B!=0) {
cout << A+B << endl;
}
return 0;
}
二、
#include <iostream>
using namespace std;
int myAbs(int n)
{
if(n < 0) return -n;
else return n;
}
int main()
{
int A, B;
while(cin >> A >> B, (A|B) != 0) {
while(myAbs(A) >= 100000) {
if(A > 0) {
B += 100000;
A -= 100000;
} else {
B -= 100000;
A += 100000;
}
}
if(A > 0) {
for(int i=0; i<A; ++i) {
B++;
}
} else {
for(int i=0; i<-A; ++i) {
B--;
}
}
cout << B << endl;
}
return 0;
}
三、
#include<iostream>
using namespace std;
int C[3][32];
int main()
{
int A, B;
while(cin >> A >> B, A!=0 || B!=0) {
for(int i=0; i<32; ++i) {
C[0][i] = (A >> i) & 1;
C[1][i] = (B >> i) & 1;
}
for(int i=0; i<32; ++i) {
if(C[0][i] + C[1][i] >= 2) {
C[C[1][i-1] & 1][i+1]++;
C[0][i]--;
C[1][i]--;
}
C[2][i] = C[0][i] + C[1][i];
}
int R = 0;
for(int i=0; i<32; ++i) {
R |= C[2][i] << i;
}
cout << R << endl;
}
return 0;
}