Cod sursă (job #513303)

Utilizator avatar MaddoxX Mironica Vasile MaddoxX IP ascuns
Problemă Romb2 (clasele 9-10) Compilator cpp | 0,73 kb
Rundă Arhiva de probleme Status evaluat
Dată 16 dec. 2019 16:13:06 Scor 100
#include <fstream>
using namespace std;

ifstream cin("romb2.in");
ofstream cout("romb2.out");
int X[4], Y[4], t;

int main() {
	cin >> t;
    while(t--) {
        int dx, dy, steps, x, y;
        long long ans = 0;
        cin >> dx >> dy >> steps >> x >> y;
        x *= dy;
        y *= dx;
        dx *= dy;
        Y[0] = -dx;
        X[1] =  dx;
        Y[2] =  dx;
        X[3] = -dx;
        while(steps--) {
            int a = (x > y);
            int b = (x + y > 0);
            int q = (a << 1) ^ (a == b);
            x <<= 1;
            y <<= 1;
            x += X[q];
            y += Y[q];
            ans = (ans << 2) ^ q;
        }
        cout << ans + 1 << '\n';
    }
    return 0;
}