Submission #596103

#TimeUsernameProblemLanguageResultExecution timeMemory
596103Mohammed_AtalahThe Big Prize (IOI17_prize)C++17
20 / 100
1 ms308 KiB
// Template path: /home/mohammed/.config/sublime-text-3/Packages/User #include <bits/stdc++.h> #include <ext/pb_ds/tree_policy.hpp> #include <ext/pb_ds/assoc_container.hpp> using namespace std; using namespace __gnu_pbds; // typedef typedef long long ll; typedef long double ld; typedef vector<int> vecint; typedef vector<char> vecchar; typedef vector<string> vecstr; typedef vector<long long> vecll; typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> ordered_set; // Marcos #define endl ("\n") // #define int long long #define mod 1000000007 #define pi (3.141592653589) #define REP(i,a,b) for (int i = a; i < b; i++) #define RREP(i,a,b) for (int i = a; i > b; i--) #define PFD(n) cout.precision(n) // PFN == Print Full Double #define fast ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr) // Functions long long squared(long long x) {return (x * x) % mod;} int factorial(int n) {long long res = 1; for (int i = 1; i <= n; i++) {res = ((res * i) % mod + mod) % mod ;} return res;} long long power(long long x, long long p) {if (p == 0) {return 1;} if (p % 2 == 1) {return (power(x, p - 1) * x) % mod;} return squared(power(x, p / 2));} #include "prize.h" int find_best(int n) { // for (int i = 0; i < n; i++) { // vector<int> res = ask(i); // if (res[0] + res[1] == 0) // return i; // } int l = 0; int r = n - 1; while (l <= r) { int mid = (l + r) / 2; vector<int> v = ask(mid); if (v[0] == 1) { r = mid - 1; } else if (v[1] == 1) { l = mid + 1; } else { return mid; } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...