Pagini recente » Cod sursa (job #740801) | Cod sursa (job #1716789) | Cod sursa (job #2109906) | Cod sursa (job #1518375) | Cod sursa (job #474317)
Cod sursa(job #474317)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fractal.in");
ofstream fout("fractal.out");
int i,c[20],k,x,y,rez;
/*
1 | 4
--|--
2 | 3
*/
void rezolva(int k) {
if (k>=1) {
int med=1<<k-1;
if (x<=med&&y<=med) { //cadran 1
rez+=0; cout<<k<<" c1\n";
}
else if (x<=med&&y>med) { //cadran 2
rez+=c[k-1]; cout<<k<<" c2\n";
}
else if (x>med&&y>med) { //cadran 3
rez+=2*c[k-1]; cout<<k<<" c3\n";
}
else if (x>med&&y<=med) { //cadran 4
rez+=3*c[k-1]; cout<<k<<" c4\n";
}
rezolva(k-1);
}
}
int main()
{
c[0]=1;
c[1]=3;
for(i=2;i<=15;i++) {
c[i]=4*c[i-1]+3;
cout<<"c["<<i<<"]="<<c[i]<<"\n";
}
fin>>k>>x>>y;
rezolva(k);
fout<<rez;
fout.close();
return 0;
}