Pagini recente » Cod sursa (job #386145) | Cod sursa (job #1599464) | Cod sursa (job #3255487) | Cod sursa (job #1196963) | Cod sursa (job #1443348)
#include<fstream>
using namespace std;
ifstream f( "fractal.in" );
ofstream g( "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;
f >> k >> y >> x;
g << solve( k, x, y ) << "\n";
return 0;
}