Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- using ll = long long;
- using ld = long double;
- void slv1()
- {
- // u-r-d-l
- // r-d-l-u
- // d-l-u-r
- // l-u-r-d
- string w;
- cout << "up" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv4();
- }
- cout << "right" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv1();
- }
- cout << "down" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv2();
- }
- cout << "left" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv3();
- }
- cout << "no way out";
- exit(0);
- }
- void slv2()
- {
- // u-r-d-l
- // r-d-l-u
- // d-l-u-r
- // l-u-r-d
- string w;
- cout << "right" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv1();
- }
- cout << "down" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv2();
- }
- cout << "left" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv3();
- }
- cout << "up" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv4();
- }
- cout << "no way out";
- exit(0);
- }
- void slv3()
- {
- // u-r-d-l
- // r-d-l-u
- // d-l-u-r
- // l-u-r-d
- string w;
- cout << "down" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv2();
- }
- cout << "left" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv3();
- }
- cout << "up" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv4();
- }
- cout << "right" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv1();
- }
- cout << "no way out";
- exit(0);
- }
- void slv4()
- {
- // u-r-d-l
- // r-d-l-u
- // d-l-u-r
- // l-u-r-d
- string w;
- cout << "left" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv3();
- }
- cout << "up" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv4();
- }
- cout << "right" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv1();
- }
- cout << "down" << '\n';
- cout << flush;
- cin >> w;
- if (w.at(0) == 's' || w.at(1) == 'r')
- {
- exit(0);
- }
- else if (w.at(0) == 'o')
- {
- slv2();
- }
- cout << "no way out";
- exit(0);
- }
- int main()
- {
- slv1();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment