#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fr(i,a,b,c) for(int i = a;i<b;i+=c)
#define fre(i,a,b,c) for(int i = a;i>=b;i-=c)
#define MAXN 1e9 + 5
#define IINF 2000000005
#define LINF 100000000000000005
#define MOD 1000000007
#define str string
#define endl '\n'
using pii = pair<int,int>;
using pll = pair<ll,ll>;
using piqr = priority_queue<ll,vector<ll>,greater<ll>>;
using piiqr = priority_queue<pii,vector<pii>,greater<pii>>;
using piq = priority_queue<int>;
using tiii = tuple<int,int,int>;
using tcii = tuple<char,int,int>;
int dx[4] = {1,-1,0,0};
int dy[4] = {0,0,1,-1};
int main(){
ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
// freopen("input.txt","r",stdin);
// freopen("output.txt","w",stdout);
int k,n;cin >> k >> n;
ll ps = 0,cnt = 0, cnt2 = 0;
ll ans = LINF;
ll sum = 0,ls = 0,rs = 0;
vector<int> p;
fr(i,0,n,1){
char a,b;
ll x,y;
cin >> a >> x >> b >> y;
if(a == b)ps += llabs(x - y);
else{
p.push_back(x);
p.push_back(y);
rs += x;
rs += y;
cnt+=2;
}
}
int l = 0;
// cout << l << ' ' << r << endl;
for(auto u : p){
ans = min(ans,u*1LL * cnt2 - ls + rs - 1LL * u*cnt + (cnt+cnt2)/2);
ls += u;
rs -= u;
// cout << u << ' ' << l << ' ' << r <<' ' << cnt << ' ' << cnt2 << endl;
cnt2++;
cnt--;
}
if(ans == LINF)ans = 0;
cout << ans + ps;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |