➤ Problem Link : 1334C. Circle of Monsters
✅ C++ Solution :
#include<bits/stdc++.h> using namespace std; #define ll long long int int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int t; cin>>t; while(t--) { int n; cin>>n; ll arr[n][2]; for(int i=0;i<n;i++) cin>>arr[i][0]>>arr[i][1]; if(n==1) { cout<<arr[0][0]<<"\n"; continue; } ll ans,curr=0,prev=0; for(int i=0;i<n;i++) { if(arr[i][0] > prev) curr+=arr[i][0]-prev; prev=arr[i][1]; } ans=curr; prev=curr; for(int i=1;i<n;i++) { curr=prev-arr[i-1][0]; if(arr[i][0] > arr[i-1][1]) curr+=arr[i-1][1]; else curr+=arr[i][0]; if(arr[(i+n-1)%n][0] > arr[(i+n-2)%n][1]) curr+=arr[(i+n-1)%n][0] - arr[(i+n-2)%n][1]; ans=min(ans,curr); prev=curr; } cout<<ans<<"\n"; } }
Thank you for your patience reading. If you enjoyed this post, I’d be very grateful if you’d help it spread by emailing it to a friend, or sharing it on Whatsapp or Facebook.
😇Happy Learning!!