From 2dae7ade5d21dc2560d763c40a549780a265202c Mon Sep 17 00:00:00 2001 From: oncsr Date: Wed, 1 Oct 2025 16:55:49 +0900 Subject: [PATCH] =?UTF-8?q?[20251001]=20BOJ=20/=20P5=20/=20=EC=A7=80?= =?UTF-8?q?=ED=8F=90=EA=B0=80=20=EB=84=98=EC=B3=90=ED=9D=98=EB=9F=AC=20/?= =?UTF-8?q?=20=EA=B6=8C=ED=98=81=EC=A4=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...30\354\263\220\355\235\230\353\237\254.md" | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 "khj20006/202510/01 BOJ P5 \354\247\200\355\217\220\352\260\200 \353\204\230\354\263\220\355\235\230\353\237\254.md" diff --git "a/khj20006/202510/01 BOJ P5 \354\247\200\355\217\220\352\260\200 \353\204\230\354\263\220\355\235\230\353\237\254.md" "b/khj20006/202510/01 BOJ P5 \354\247\200\355\217\220\352\260\200 \353\204\230\354\263\220\355\235\230\353\237\254.md" new file mode 100644 index 00000000..97c75d02 --- /dev/null +++ "b/khj20006/202510/01 BOJ P5 \354\247\200\355\217\220\352\260\200 \353\204\230\354\263\220\355\235\230\353\237\254.md" @@ -0,0 +1,37 @@ +```cpp +#include +using namespace std; +using ll = long long; + +int N, Q, LIMIT; +ll w[262144]{}, l[524288]{}, r[524288]{}, x[524288]{}; + +void init(int n) { + if(n >= LIMIT) return; + init(n*2); init(n*2+1); + l[n] = w[n] + max(l[n*2], r[n*2]); + r[n] = w[n] + max(l[n*2+1], r[n*2+1]); + x[n] = max({x[n*2], x[n*2+1], l[n] + r[n] - w[n]}); +} + +int main(){ + cin.tie(0)->sync_with_stdio(0); + + cin>>N; + for(int i=1;i<=N;i++) cin>>w[i]; + LIMIT = N+1; + init(1); + cout<>Q;Q--;) { + int i,d; + cin>>i>>d; + for(w[i]=d;i;i>>=1) { + l[i] = w[i] + max(l[i*2], r[i*2]); + r[i] = w[i] + max(l[i*2+1], r[i*2+1]); + x[i] = max({x[i*2], x[i*2+1], l[i] + r[i] - w[i]}); + } + cout<