poj3748
简单题
View Code
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
using namespace std;
int r, x, y;
int main()
{
//freopen("t.txt", "r", stdin);
scanf("%x,%d,%d", &r, &x, &y);
int a = 1;
if ((a << x) & r)
r -= a << x;
if ((a << (y - 2)) & r)
r -= a << (y - 2);
if (!((a << (y - 1)) & r))
r += a << (y - 1);
if (!((a << y) & r))
r += a << y;
printf("%x\n", r);
return 0;
}
#include <cstdio>
#include <cstdlib>
#include <cstring>
using namespace std;
int r, x, y;
int main()
{
//freopen("t.txt", "r", stdin);
scanf("%x,%d,%d", &r, &x, &y);
int a = 1;
if ((a << x) & r)
r -= a << x;
if ((a << (y - 2)) & r)
r -= a << (y - 2);
if (!((a << (y - 1)) & r))
r += a << (y - 1);
if (!((a << y) & r))
r += a << y;
printf("%x\n", r);
return 0;
}