Thông tin
Bài 1. CỘNG ĐOẠN – [CONGDOAN]
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long d[N]; int main(){ ios::syncwithstdio(0); cin.tie(0); int n,q; cin>>n>>q; while(q--){ int l,r,x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0; for(int i=1;i<=n;i++){ s+=d[i]; cout<<s<<" "; } return 0; } Bai 2: DAUDAU:
include <bits/stdc++.h>
using namespace std;
const int N = 2e6 + 7;
int d[N];
int main() {
ios::syncwithstdio(0);
cin.tie(0);
cout.tie(0);
int n, q;
cin >> n >> q;
for (int i = 1; i <= n; i++) d[i] = 0;
while (q--) {
int l, r;
cin >> l >> r;
d[l] ++;
d[r + 1]--;
}
int s = 0;
for (int i = 1; i <= n; i++) {
s += d[i];
cout << s << " ";
}
}
Bài 3:Tuoi cay
include <bits/stdc++.h>
using namespace std; const int N = 2e6 + 7; int d[N]; int main() { int n, q; cin >> n >> q; for (int i = 1; i <= n; i++) d[i] = 0; while (q--) { int l, r, x; cin >> l >> r >> x; d[l] += x; d[r + 1] -= x; } long long s = 0; for (int i = 1; i <= n; i++) { s += d[i]; cout << s << " "; } } Bai4:ĐENUONG
include <bits/stdc++.h>
using namespace std; const int N = 2e6 + 7; int d[N]; int main() { ios::syncwithstdio(0); cin.tie(0); cout.tie(0); int n, q; cin >> n >> q; for (int i = 1; i <= n; i++) d[i] = 0; while (q--) { int l, r; cin >> l >> r; d[l]++; d[r + 1]--; } int s = 0, cnt = 0; for (int i = 1; i <= n; i++) { s += d[i]; if (s >= 1) cnt++; } cout << cnt; } Bài 5: NHIETDO
include <bits/stdc++.h>
using namespace std; const int N = 2e6 + 7; int d[N], a[N]; int main() { ios::syncwithstdio(0); cin.tie(0); cout.tie(0); int n, q; cin >> n >> q; for (int i = 1; i <= n; i++) { cin >> a[i]; d[i] = a[i] - a[i - 1]; } while (q--) { int l, r, x; cin >> l >> r >> x; d[l] += x; d[r + 1] -= x; } int s = 0; for (int i = 1; i <= n; i++) { s += d[i]; cout << s << " "; } return 0; } BAI6 PHUÓNG
include <bits/stdc++.h>
using namespace std; const int N = 2e6 + 7; int d[N]; int main() { ios::syncwithstdio(0); cin.tie(0); cout.tie(0); int n, q, k; cin >> n >> q >> k; for (int i = 1; i <= n; i++) d[i] = 0; while (q--) { int l, r; cin >> l >> r; d[l]++; d[r + 1]--; } int s = 0, cnt1 = 0, cnt2 = 0; for (int i = 1; i <= n; i++) { s += d[i]; if (s <= k) cnt1++; if (s >= k) cnt2++; } cout << cnt1 << " " << cnt2; } BAI7 : DIEMNONG
include <bits/stdc++.h>
using namespace std; const int N = 2e6 + 7; int d[N]; int main() { ios::syncwithstdio(0); cin.tie(0); cout.tie(0); int n, q; cin >> n >> q; for (int i = 1; i <= n; i++) d[i] = 0; while (q--) { int l, r; cin >> l >> r; d[l]++; d[r + 1]--; } int s = 0, mx = 0, vt = -1; for (int i = 1; i <= n; i++) { s += d[i]; mx = max(s, mx); } for (int i = 1; i <= n; i++) { s += d[i]; if (s == mx) { vt = i; break; } } cout << mx << " " << vt; } BAI8:
include <bits/stdc++.h>
using namespace std; const int N = 2e6 + 7; int d[N], a[N]; int main() { ios::syncwithstdio(0); cin.tie(0); cout.tie(0); int n, q; cin >> n >> q; for (int i = 1; i <= n; i++) { cin >> a[i]; d[i] = a[i] - a[i - 1]; } while (q--) { int l, r, x; cin >> l >> r >> x; d[l] += x; d[r + 1] -= x; } int s = 0, mx = 0; for (int i = 1; i <= n; i++) { s += d[i]; mx = max(mx, s); } cout << mx; return 0; }
Bài 9. LỊCH TRỰC – [LICHTRUC]
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; int d[N]; int main(){ ios::syncwithstdio(0); cin.tie(0); int n,q,k; cin>>n>>q>>k; while(q--){ int l,r; cin>>l>>r; d[l]++; d[r+1]--; } int s=0,mx=0,dem=0,vt=0; for(int i=1;i<=n;i++){ s+=d[i]; if(s>mx){ mx=s; vt=i; } if(s>=k) dem++; } cout<<mx<<" "<<dem<<" "<<vt; return 0; } Bài 11 – VUNGLT
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; int d[N]; int main(){ ios::syncwithstdio(0); cin.tie(0); int n,q; cin>>n>>q; while(q--){ int l,r; cin>>l>>r; d[l]++; d[r+1]--; } int s=0,ans=0,c=0; for(int i=1;i<=n;i++){ s+=d[i]; if(s>0) c++; else c=0; ans=max(ans,c); } cout<<ans; return 0; } Bài 12 – KHUYENMAI
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long a[N],d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; cin>>n>>q; for(int i=1;i<=n;i++) cin>>a[i]; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0,ans=-(1LL<<60); for(int i=1;i<=n;i++){ s+=d[i]; ans=max(ans,a[i]+s); } cout<<ans; return 0; } Bài 13 – TACDONG
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long d[N],a[N],p[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; long long k; cin>>n>>q>>k; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } for(int i=1;i<=n;i++){ d[i]+=d[i-1]; p[i]=p[i-1]+d[i]; } int ans=0,l=0; for(int r=1;r<=n;r++){ while(l<r&&p[r]-p[l]>=k) l++; if(p[r]-p[l]>=k) ans=max(ans,r-l); } for(int i=1;i<=n;i++){ for(int j=i;j<=n;j++){ if(p[j]-p[i-1]>=k) ans=max(ans,j-i+1); } } cout<<ans; return 0; } Bài 14 – LUULUONG
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; int d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q,k; cin>>n>>q>>k; while(q--){ int l,r; cin>>l>>r; d[l]++; d[r+1]--; } int s=0,mx=0,dem=0,ans=0,c=0; for(int i=1;i<=n;i++){ s+=d[i]; mx=max(mx,s); if(s>=k){ dem++; c++; ans=max(ans,c); }else c=0; } cout<<mx<<" "<<dem<<" "<<ans; return 0; } Bài 15 – CONGVIEC
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; long long k; cin>>n>>q>>k; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0,mx=-(1LL<<60); int vt=1,dem=0; for(int i=1;i<=n;i++){ s+=d[i]; if(s>mx){ mx=s; vt=i; } if(s>k) dem++; } cout<<vt<<" "<<dem; return 0; } Bài 16 – PHANVUNG
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; cin>>n>>q; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0,truoc=0; int ans=0,c=0; for(int i=1;i<=n;i++){ s+=d[i]; if(i==1||s==truoc) c++; else c=1; ans=max(ans,c); truoc=s; } cout<<ans; return 0; } Bài 17 – DOANONG
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; long long k; cin>>n>>q>>k; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0; int ans=0,c=0; for(int i=1;i<=n;i++){ s+=d[i]; if(s>=k){ c++; ans=max(ans,c); }else c=0; } cout<<ans; return 0; } Bài 18 – TRUYVET
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; cin>>n>>q; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0,mx=-(1LL<<60); int vt=0,dem=0; for(int i=1;i<=n;i++){ s+=d[i]; if(s>mx){ mx=s; vt=i; dem=1; }else if(s==mx){ dem++; } } cout<<mx<<" "<<vt<<" "<<dem; return 0; } Bài 19 – DOANTU
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long a[N],d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; cin>>n>>q; for(int i=1;i<=n;i++) cin>>a[i]; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0,cur=0,ans=-(1LL<<60); for(int i=1;i<=n;i++){ s+=d[i]; a[i]+=s; if(i==1) cur=a[i]; else cur=max(a[i],cur+a[i]); ans=max(ans,cur); } cout<<ans; return 0; }Bài 20 – QLKV
include <bits/stdc++.h>
using namespace std; const int N=2e5+7; long long a[N],d[N]; int main(){ ios::syncwithstdio(false); cin.tie(nullptr); int n,q; long long k; cin>>n>>q>>k; for(int i=1;i<=n;i++) cin>>a[i]; while(q--){ int l,r; long long x; cin>>l>>r>>x; d[l]+=x; d[r+1]-=x; } long long s=0,mx=-(1LL<<60),sum=0; int vt=1,dem=0,ans=0,c=0; for(int i=1;i<=n;i++){ s+=d[i]; a[i]+=s; sum+=a[i]; if(a[i]>mx){ mx=a[i]; vt=i; } if(a[i]>=k){ dem++; c++; ans=max(ans,c); }else c=0; } cout<<mx<<" "<<vt<<" "<<dem<<" "<<ans<<" "<<sum; return 0; }