제출 #383190

#제출 시각아이디문제언어결과실행 시간메모리
383190danielcm585Palembang Bridges (APIO15_bridge)C++14
0 / 100
2 ms364 KiB
#include <bits/stdc++.h>
using namespace std;

#define fi first
#define se second

typedef long long ll;
typedef pair<int,int> ii;

const int N = 2e5;
const ll INF = 1e18;
int k, n;
vector<ll> v;

int main() {
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    cin >> k >> n;
    ll ans = 0;
    for (int i = 1; i <= n; i++) {
        char p, q;
        int s, t;
        cin >> p >> s >> q >> t;
        if (p == q) ans += abs(s-t);
        else {
            ans++;
            v.push_back(s);
            v.push_back(t);
        }
    }
    ll mini = INF;
    if (k == 1) {
        sort(v.begin(),v.end());
        ll cost = 0;
        for (int i = 1; i < v.size(); i++) cost += v[i]-v[0];
        for (int i = 0; i < v.size(); i++) {
            mini = min(mini,cost);
            if (i+1 < v.size()) {
                cost += (v[i+1]-v[i])*(i+1);
                cost -= (v[i+1]-v[i])*(v.size()-i-1);
            }
        }
        ans += mini;
    }
    else {

    }
    cout << ans << '\n';
    return 0;
}

/*
1 5
B 0 A 4 
B 1 B 3 
A 5 B 7 
B 2 A 6
B 1 A 7 
*/

컴파일 시 표준 에러 (stderr) 메시지

bridge.cpp: In function 'int main()':
bridge.cpp:34:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   34 |         for (int i = 1; i < v.size(); i++) cost += v[i]-v[0];
      |                         ~~^~~~~~~~~~
bridge.cpp:35:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |         for (int i = 0; i < v.size(); i++) {
      |                         ~~^~~~~~~~~~
bridge.cpp:37:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |             if (i+1 < v.size()) {
      |                 ~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...