Submission #1074517

# Submission time Handle Problem Language Result Execution time Memory
1074517 2024-08-25T10:54:25 Z beaconmc Hotter Colder (IOI10_hottercolder) C++14
0 / 100
2109 ms 23300 KB
#include "grader.h"
#include <bits/stdc++.h>

typedef long long ll;

#define FOR(i,x,y) for(ll i=x; i<y; i++)
#define FORNEG(i,x,y) for(lli = x; i>y; i--)
using namespace std;


ll n;
map<ll,ll> sus;
ll cnt = 0;
ll idkman = -1;
int guess(ll a){

   if (a==0) return -1;
   if (a==n+1) return -1;
   cnt++;
   idkman = a;
   return Guess(a);

}
int solve(int a, int b){
   if (a==b) return a;
   
   //ll lmao = rand()%2;
   ll lmao = 1;
   // cout << lmao << endl;
   // cout << a << " " << b << endl;

   
   if (idkman == (a+b)/2 && (b-a+1) >500){
      // cout << "LMAO" << endl;
      ll mid = idkman;
      ll right = guess(idkman+1);
      if (right == -1){
         return solve(a, mid);
      }else{
         return solve(mid+1, b);
      }
   }
   else{

      if (lmao == 0){
         ll mid = (a+b)/2;
         ll midleft = (a+mid)/2;
         ll midright = (b+mid+1)/2;

         ll left, right;
         left = guess(midleft);
         right = guess(midright);
         if (right == 0 ){
            return (midleft+midright)/2;
         }
         else if (right == -1){
            if ((midleft+midright)%2==0) return solve(a, mid-1);
            return solve(a,mid);
         }else{
            return solve(mid+1, b);
         }
      } else{
         ll mid = (a+b+1)/2;
         ll midleft = (a+mid-1)/2;
         ll midright = (b+mid)/2;

         ll left, right;
         right = guess(midright);
         left = guess(midleft);

         if (left == 0){
            return (midleft+midright)/2;
         }
         else if (left == -1){
            if ((midleft+midright)%2==0) return solve(mid+1, b);
            return solve(mid, b);
         }else{
            
            return solve(a, mid-1);

         }
      }


   }
}


int HC(int N){
   idkman = -1;
   srand(69420);
   sus.clear();
   n = N;
   cnt = 0;
   ll ans = solve(1,N);

   return ans;
}

Compilation message

hottercolder.cpp: In function 'int solve(int, int)':
hottercolder.cpp:50:13: warning: variable 'left' set but not used [-Wunused-but-set-variable]
   50 |          ll left, right;
      |             ^~~~
hottercolder.cpp:67:19: warning: variable 'right' set but not used [-Wunused-but-set-variable]
   67 |          ll left, right;
      |                   ^~~~~
# Verdict Execution time Memory Grader output
1 Incorrect 225 ms 8664 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 223 ms 8480 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 225 ms 4988 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 2109 ms 23300 KB Output isn't correct - alpha = 0.000000000000
2 Halted 0 ms 0 KB -