Submission #1272745

#TimeUsernameProblemLanguageResultExecution timeMemory
1272745ghammazhassanFish 3 (JOI24_fish3)C++20
9 / 100
2095 ms5132 KiB
// #include <bits/stdc++.h> #include <iostream> #include <cmath> #include <algorithm> #include <map> #include <unordered_map> #include <vector> #include <iomanip> #include <string> #include <queue> #include <set> #include <deque> using namespace std; #define int long long #define endl "\n" #define fi first #define se second const int M=998244353; const int inf = 1e14; const int LOG=20; const int N=3e5+5; int n , m , c , w , k , t=1 , q=1 , x , y , z , l , r; void solve() { cin >> n >> x; vector<int>a(n+1); for (int i=1;i<=n;i++){ cin >> a[i]; } cin >> q; for (int o=0;o<q;o++){ cin >> l >> r; c=0; vector<int>b=a; bool f=0; for (int i=l;i<=r;i++){ a[i]-=c; int u=a[i]-(a[i]/x)*x; if (u<0)f=1; c+=u; a[i]-=u; } for (int i=l;i<=r;i++){ if (a[i]<0 or a[i]%x){ f=1; } } if (f){ cout << -1 << endl; a=b; continue; } int mn=inf; c=0; for (int i=r;i>=l;i--){ int u=min(mn,a[i]); a[i]-=u; int y=((a[i]+x-1)/x)*x-a[i]; u+=y; a[i]+=y; mn=min(mn,u); c+=a[i]/x; } cout << c << endl; a=b; } } signed main() { ios::sync_with_stdio(0);//DO NOT USE IN INTERACTIVE cin.tie(0), cout.tie(0);//DO NOT USE IN INTERACTIVE cout << fixed << setprecision(9); // int t=1; // cin >> t; for (int _=1;_<=t;_++){ solve(); q++; } }
#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...