Pagini recente » Cod sursa (job #1352057) | Cod sursa (job #2235402) | Cod sursa (job #91720) | Cod sursa (job #247598) | Cod sursa (job #1386175)
#include<fstream>
using namespace std;
ifstream fin( "fractal.in" );
ofstream fout( "fractal.out" );
int solve( int k, int x, int y ) {
if ( k == 0 ) {
return 0;
}
int l = 1 << (k - 1);
if ( x <= l ) {
if ( y <= l ) {
return solve( k - 1, y, x );
} else {
return solve( k - 1, l + 1 - y + l, l + 1 - x ) + 3 * l * l;
}
} else {
if ( y <= l ) {
return solve( k - 1, x - l, y ) + l * l;
} else {
return solve( k - 1, x - l, y - l ) + 2 * l * l;
}
}
}
int main() {
int k, x, y;
fin >> k >> y >> x;
fout << solve( k, x, y ) << "\n";
fin.close();
fout.close();
return 0;
}