Advertisement
K_Y_M_bl_C

Untitled

Dec 26th, 2016
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.12 KB | None | 0 0
  1. int itNoLight;
  2. int F = 0;
  3.  
  4. string ccmd;
  5. int ccdrs, cpr;
  6. void dfsAns();
  7.  
  8. void dfsOff()
  9. {
  10.     string cmd;
  11.     int cdrs, pr;
  12.     cin >> cmd >> cdrs >> pr;
  13.     ccmd = cmd;
  14.     ccdrs = cdrs;
  15.     cpr = pr;
  16.     if (cmd[1] == 'f')
  17.         ++itNoLight;
  18.     if (cmd[1] == 'n')
  19.         itNoLight = 0, cout << "turn off" << endl;
  20.     if (itNoLight > 500)
  21.     {
  22.         ccmd = "off";
  23.         cpr = 0;
  24.         dfsAns();
  25.         cout << "done" << endl;
  26.         exit(0);
  27.     }
  28.     int nxtwy = rand() % cdrs + 1;
  29.     cout << "go " << nxtwy << " keep" << endl;
  30.     dfsOff();
  31.     if (pr)
  32.         cout << "go " << pr << " keep" << endl, cin >> ccmd >> ccdrs >> cpr;
  33. }
  34.  
  35. void dfsAns()
  36. {
  37.     string cmd;
  38.     int cdrs, pr;
  39.     cmd = ccmd;
  40.     cdrs = ccdrs;
  41.     pr = cpr;
  42.     if (cmd[1] == 'f')
  43.         cout << "turn on" << endl;
  44.     if (cmd[1] == 'n')
  45.         return;
  46.     for1(i, cdrs)
  47.     {
  48.         if (i != pr)
  49.         {
  50.             cout << "go " << i << " keep" << endl;
  51.             cin >> ccmd;
  52.             if (ccmd[1] != 'o')
  53.                 cin >> ccdrs >> cpr, dfsAns();
  54.         }
  55.     }
  56.     if (pr)
  57.         cout << "go " << pr << " lock" << endl, cin >> ccmd >> ccdrs >> cpr;
  58. }
  59.  
  60. int solve()
  61. {
  62.     dfsOff();
  63.     ccmd = "off";
  64.     cpr = 0;
  65.     dfsAns();
  66.     cout << "done" << endl;
  67.     //system("pause");
  68.     return 0;
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement