Submission #1026633


Source Code Expand

#include <iostream>
#include <cstdio>
#include <vector>
#include <string>
#include <algorithm>
#include <set>
#include <map>

#define rep(i,n) for(int i=0; i<(n); i++)
#define reps(i,x,n) for(int i=x; i<(n); i++)
#define rrep(i,n) for(int i=(n)-1; i>=0; i--)
#define all(X) (X).begin(),(X).end()
#define X first
#define Y second
#define pb push_back
#define eb emplace_back

using namespace std;
typedef long long int ll;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;

template<class T> bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; }
template<class T> bool chmin(T &a, const T &b) { if (a>b) { a=b; return 1; } return 0; }

template<class A, size_t N, class T> void Fill(A (&a)[N], const T &v){ fill( (T*)a, (T*)(a+N), v ); }

const ll INF = 0x3fffffff;


int main(){
	//ios_base::sync_with_stdio(0);
	ll N, L, ans=1e18;
	ll a[200005], b[200005], c[200005];

	cin >> N >> L;
	rep(i,N) cin >> a[i] >> b[i] >> c[i];
	rep(i,N+2){
		a[i+N] = a[i] + L;
		b[i+N] = b[i];
		c[i+N] = c[i];
	}

	vector<ll> num(200005), len(200005);
	multimap<ll,ll> mp;
//	rep(k,N){
//		ll sum=0;
	ll k = 0;
		rep(i,N){
			len[i+1] = a[k+i+1] - a[k+i];
			num[i+1] = num[i] + (b[k+i] - c[k+i]);
//			sum += abs(num[i+1] * len[i+1]);
			mp.emplace( num[i+1], len[i+1] );
		}
//		chmin(ans, sum);
//	}

	ll bnum = mp.begin()->first;
	ll sum=0, sum_lenR = 0, sum_lenL = 0;
	for(auto p: mp){
		//cout << "mp " << p.first << " " << p.second << endl;
		sum += abs( (p.first - bnum) * p.second );
		sum_lenR += p.second;
	}
	//cout << sum << endl;
	chmin(ans, sum);
	for(auto p: mp){
		ll d = p.first - bnum;
		bnum = p.first;
		sum += d * (sum_lenL - sum_lenR);
		chmin(ans, sum);
		sum_lenR -= p.second;
		sum_lenL += p.second;
	}

	cout << ans << endl;

	return 0;
}

Submission Info

Submission Time
Task D - タクシー
User oyas
Language C++11 (GCC 4.8.1)
Score 100
Code Size 1847 Byte
Status AC
Exec Time 159 ms
Memory 15024 KB

Judge Result

Set Name Sample Subtask1 Subtask2 Subtask3
Score / Max Score 0 / 0 15 / 15 30 / 30 55 / 55
Status
AC × 2
AC × 22
AC × 42
AC × 62
Set Name Test Cases
Sample subtask0-sample-01.txt, subtask0-sample-02.txt
Subtask1 subtask0-sample-01.txt, subtask0-sample-02.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt
Subtask2 subtask0-sample-01.txt, subtask0-sample-02.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt, subtask2-01.txt, subtask2-02.txt, subtask2-03.txt, subtask2-04.txt, subtask2-05.txt, subtask2-06.txt, subtask2-07.txt, subtask2-08.txt, subtask2-09.txt, subtask2-10.txt, subtask2-11.txt, subtask2-12.txt, subtask2-13.txt, subtask2-14.txt, subtask2-15.txt, subtask2-16.txt, subtask2-17.txt, subtask2-18.txt, subtask2-19.txt, subtask2-20.txt
Subtask3 subtask0-sample-01.txt, subtask0-sample-02.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt, subtask2-01.txt, subtask2-02.txt, subtask2-03.txt, subtask2-04.txt, subtask2-05.txt, subtask2-06.txt, subtask2-07.txt, subtask2-08.txt, subtask2-09.txt, subtask2-10.txt, subtask2-11.txt, subtask2-12.txt, subtask2-13.txt, subtask2-14.txt, subtask2-15.txt, subtask2-16.txt, subtask2-17.txt, subtask2-18.txt, subtask2-19.txt, subtask2-20.txt, subtask3-01.txt, subtask3-02.txt, subtask3-03.txt, subtask3-04.txt, subtask3-05.txt, subtask3-06.txt, subtask3-07.txt, subtask3-08.txt, subtask3-09.txt, subtask3-10.txt, subtask3-11.txt, subtask3-12.txt, subtask3-13.txt, subtask3-14.txt, subtask3-15.txt, subtask3-16.txt, subtask3-17.txt, subtask3-18.txt, subtask3-19.txt, subtask3-20.txt
Case Name Status Exec Time Memory
subtask0-sample-01.txt AC 27 ms 4120 KB
subtask0-sample-02.txt AC 22 ms 4112 KB
subtask1-01.txt AC 24 ms 4120 KB
subtask1-02.txt AC 22 ms 4120 KB
subtask1-03.txt AC 30 ms 4536 KB
subtask1-04.txt AC 29 ms 4628 KB
subtask1-05.txt AC 28 ms 4628 KB
subtask1-06.txt AC 30 ms 4532 KB
subtask1-07.txt AC 30 ms 4532 KB
subtask1-08.txt AC 29 ms 4632 KB
subtask1-09.txt AC 27 ms 4536 KB
subtask1-10.txt AC 30 ms 4588 KB
subtask1-11.txt AC 29 ms 4632 KB
subtask1-12.txt AC 30 ms 4588 KB
subtask1-13.txt AC 27 ms 4632 KB
subtask1-14.txt AC 29 ms 4628 KB
subtask1-15.txt AC 27 ms 4636 KB
subtask1-16.txt AC 29 ms 4632 KB
subtask1-17.txt AC 29 ms 4536 KB
subtask1-18.txt AC 29 ms 4536 KB
subtask1-19.txt AC 29 ms 4628 KB
subtask1-20.txt AC 29 ms 4536 KB
subtask2-01.txt AC 30 ms 4620 KB
subtask2-02.txt AC 29 ms 4584 KB
subtask2-03.txt AC 30 ms 4532 KB
subtask2-04.txt AC 31 ms 4532 KB
subtask2-05.txt AC 28 ms 4628 KB
subtask2-06.txt AC 28 ms 4588 KB
subtask2-07.txt AC 30 ms 4632 KB
subtask2-08.txt AC 29 ms 4584 KB
subtask2-09.txt AC 30 ms 4640 KB
subtask2-10.txt AC 31 ms 4580 KB
subtask2-11.txt AC 30 ms 4636 KB
subtask2-12.txt AC 31 ms 4588 KB
subtask2-13.txt AC 29 ms 4536 KB
subtask2-14.txt AC 29 ms 4624 KB
subtask2-15.txt AC 30 ms 4532 KB
subtask2-16.txt AC 31 ms 4536 KB
subtask2-17.txt AC 31 ms 4628 KB
subtask2-18.txt AC 29 ms 4628 KB
subtask2-19.txt AC 30 ms 4532 KB
subtask2-20.txt AC 32 ms 4532 KB
subtask3-01.txt AC 47 ms 6196 KB
subtask3-02.txt AC 87 ms 9448 KB
subtask3-03.txt AC 153 ms 15016 KB
subtask3-04.txt AC 128 ms 14904 KB
subtask3-05.txt AC 153 ms 14956 KB
subtask3-06.txt AC 149 ms 14900 KB
subtask3-07.txt AC 153 ms 14904 KB
subtask3-08.txt AC 152 ms 14956 KB
subtask3-09.txt AC 123 ms 14900 KB
subtask3-10.txt AC 159 ms 15024 KB
subtask3-11.txt AC 122 ms 14892 KB
subtask3-12.txt AC 153 ms 14900 KB
subtask3-13.txt AC 149 ms 15020 KB
subtask3-14.txt AC 154 ms 15024 KB
subtask3-15.txt AC 154 ms 14948 KB
subtask3-16.txt AC 153 ms 15008 KB
subtask3-17.txt AC 151 ms 14956 KB
subtask3-18.txt AC 144 ms 15024 KB
subtask3-19.txt AC 152 ms 14900 KB
subtask3-20.txt AC 152 ms 14904 KB