-
Notifications
You must be signed in to change notification settings - Fork 0
/
C.cpp
45 lines (42 loc) · 963 Bytes
/
C.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include<bits/stdc++.h>
using namespace std;
#define fastio ios::sync_with_stdio(0);cin.tie(0)
long long a[300005],b[300005];
int main()
{
fastio;
long long t,n,i,j,mn,cur;
cin>>t;
while(t--)
{
cin>>n;
for(i=0;i<n;i++)
cin>>a[i]>>b[i];
for(i=0;i<n;i++)
{
if(i==0)
{
mn=a[i];
for(j=1;j<n;j++)
{
mn+=max(0LL,a[j]-b[j-1]);
}
cur=mn;
}
else
{
cur=cur-a[(i+n-1)%n];
if(a[i]>b[(i+n-1)%n])
cur+=b[(i+n-1)%n];
else
cur+=a[i];
if(a[(i-1+n)%n]>b[(i-2+n)%n])
cur+=a[(i-1+n)%n]-b[(i-2+n)%n];
mn=min(mn,cur);
}
//cout<<cur<<"\n";
}
cout<<mn<<"\n";
}
return 0;
}