제출 #970413

#제출 시각아이디문제언어결과실행 시간메모리
970413rahidilbayramliHorses (IOI15_horses)C++17
17 / 100
1541 ms10704 KiB
#pragma GCC optimize("-O3") #include<bits/stdc++.h> #include "horses.h" #include<ext/pb_ds/assoc_container.hpp> #include<ext/pb_ds/tree_policy.hpp> #define ll long long #define ld long double #define vl vector<ll> #define vi vector<int> #define pii pair<int, int> #define pll pair<ll, ll> #define all(v) v.begin(), v.end() #define rall(v) v.rbegin(), v.rend() #define pb push_back #define p_b pop_back #define f first #define s second using namespace std; using namespace __gnu_pbds; typedef tree<int, null_type, less_equal<int>, rb_tree_tag, tree_order_statistics_node_update> ordered_set; const int mod = 1e9+7, sz = 1e6+5; int x[sz], y[sz], n; int init(int N, int X[], int Y[]) { int h = 1, ans = 0; n = N; for(int i = 0; i < N; i++) { x[i] = X[i]; y[i] = Y[i]; h *= X[i]; h %= mod; ans = max(ans, (h * Y[i]) % mod); } return ans; } int updateX(int pos, int val) { x[pos] = val; int h = 1, ans = 0; for(int i = 0; i < n; i++) { h *= x[i]; h %= mod; ans = max(ans, (h * y[i]) % mod); } return ans; } int updateY(int pos, int val) { y[pos] = val; int h = 1, ans = 0; for(int i = 0; i < n; i++) { h *= x[i]; h %= mod; ans = max(ans, (h * y[i]) % mod); } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...