Submission #565075

# Submission time Handle Problem Language Result Execution time Memory
565075 2022-05-20T08:44:53 Z maomao90 Arranging Tickets (JOI17_arranging_tickets) C++17
10 / 100
110 ms 332 KB
// Hallelujah, praise the one who set me free
// Hallelujah, death has lost its grip on me
// You have broken every chain, There's salvation in your name
// Jesus Christ, my living hope
#include <bits/stdc++.h> 
using namespace std;

template <class T>
inline bool mnto(T& a, T b) {return a > b ? a = b, 1 : 0;}
template <class T>
inline bool mxto(T& a, T b) {return a < b ? a = b, 1: 0;}
#define REP(i, s, e) for (int i = s; i < e; i++)
#define RREP(i, s, e) for (int i = s; i >= e; i--)
typedef long long ll;
typedef long double ld;
#define FI first
#define SE second
typedef pair<int, int> ii;
typedef pair<ll, ll> pll;
typedef tuple<int, int, int> iii;
#define ALL(_a) _a.begin(), _a.end()
#define pb push_back
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<ii> vii;
typedef vector<iii> viii;

#ifndef DEBUG
#define cerr if (0) cerr
#endif

const int INF = 1000000005;
const ll LINF = 1000000000000000005ll;
const int MAXN = 200005;

int n, m;
ii ab[MAXN];
int ev[MAXN];
int ans;

int main() {
#ifndef DEBUG
    ios::sync_with_stdio(0), cin.tie(0);
#endif
    cin >> n >> m;
    REP (i, 0, m) {
        int c; cin >> ab[i].FI >> ab[i].SE >> c;
        if (ab[i].FI > ab[i].SE) {
            swap(ab[i].FI, ab[i].SE);
        }
    }
    ans = INF;
    REP (i, 0, 1 << m) {
        cerr << i << '\n';
        REP (j, 0, m) {
            if (i >> j & 1) {
                ev[1]++;
                cerr << "+ " << 1 << '\n';
                ev[ab[j].FI]--;
                cerr << "- " << ab[j].FI << '\n';
                ev[ab[j].SE]++;
                cerr << "+ " << ab[j].SE << '\n';
            } else {
                ev[ab[j].FI]++;
                cerr << "+ " << ab[j].FI << '\n';
                ev[ab[j].SE]--;
                cerr << "- " << ab[j].SE << '\n';
            }
        }
        int sm = 0;
        int res = 0;
        REP (i, 1, n + 1) {
            sm += ev[i];
            cerr << ' ' << i << ' ' << sm << '\n';
            mxto(res, sm);
            ev[i] = 0;
        }
        mnto(ans, res);
    }
    cout << ans << '\n';
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 99 ms 212 KB Output is correct
2 Correct 105 ms 312 KB Output is correct
3 Correct 102 ms 316 KB Output is correct
4 Correct 100 ms 308 KB Output is correct
5 Correct 104 ms 316 KB Output is correct
6 Correct 106 ms 316 KB Output is correct
7 Correct 105 ms 332 KB Output is correct
8 Correct 99 ms 212 KB Output is correct
9 Correct 101 ms 316 KB Output is correct
10 Correct 108 ms 212 KB Output is correct
11 Correct 110 ms 308 KB Output is correct
12 Correct 103 ms 316 KB Output is correct
13 Correct 99 ms 320 KB Output is correct
14 Correct 101 ms 308 KB Output is correct
15 Correct 103 ms 308 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 99 ms 212 KB Output is correct
2 Correct 105 ms 312 KB Output is correct
3 Correct 102 ms 316 KB Output is correct
4 Correct 100 ms 308 KB Output is correct
5 Correct 104 ms 316 KB Output is correct
6 Correct 106 ms 316 KB Output is correct
7 Correct 105 ms 332 KB Output is correct
8 Correct 99 ms 212 KB Output is correct
9 Correct 101 ms 316 KB Output is correct
10 Correct 108 ms 212 KB Output is correct
11 Correct 110 ms 308 KB Output is correct
12 Correct 103 ms 316 KB Output is correct
13 Correct 99 ms 320 KB Output is correct
14 Correct 101 ms 308 KB Output is correct
15 Correct 103 ms 308 KB Output is correct
16 Incorrect 6 ms 212 KB Output isn't correct
17 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 99 ms 212 KB Output is correct
2 Correct 105 ms 312 KB Output is correct
3 Correct 102 ms 316 KB Output is correct
4 Correct 100 ms 308 KB Output is correct
5 Correct 104 ms 316 KB Output is correct
6 Correct 106 ms 316 KB Output is correct
7 Correct 105 ms 332 KB Output is correct
8 Correct 99 ms 212 KB Output is correct
9 Correct 101 ms 316 KB Output is correct
10 Correct 108 ms 212 KB Output is correct
11 Correct 110 ms 308 KB Output is correct
12 Correct 103 ms 316 KB Output is correct
13 Correct 99 ms 320 KB Output is correct
14 Correct 101 ms 308 KB Output is correct
15 Correct 103 ms 308 KB Output is correct
16 Incorrect 6 ms 212 KB Output isn't correct
17 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 99 ms 212 KB Output is correct
2 Correct 105 ms 312 KB Output is correct
3 Correct 102 ms 316 KB Output is correct
4 Correct 100 ms 308 KB Output is correct
5 Correct 104 ms 316 KB Output is correct
6 Correct 106 ms 316 KB Output is correct
7 Correct 105 ms 332 KB Output is correct
8 Correct 99 ms 212 KB Output is correct
9 Correct 101 ms 316 KB Output is correct
10 Correct 108 ms 212 KB Output is correct
11 Correct 110 ms 308 KB Output is correct
12 Correct 103 ms 316 KB Output is correct
13 Correct 99 ms 320 KB Output is correct
14 Correct 101 ms 308 KB Output is correct
15 Correct 103 ms 308 KB Output is correct
16 Incorrect 6 ms 212 KB Output isn't correct
17 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 99 ms 212 KB Output is correct
2 Correct 105 ms 312 KB Output is correct
3 Correct 102 ms 316 KB Output is correct
4 Correct 100 ms 308 KB Output is correct
5 Correct 104 ms 316 KB Output is correct
6 Correct 106 ms 316 KB Output is correct
7 Correct 105 ms 332 KB Output is correct
8 Correct 99 ms 212 KB Output is correct
9 Correct 101 ms 316 KB Output is correct
10 Correct 108 ms 212 KB Output is correct
11 Correct 110 ms 308 KB Output is correct
12 Correct 103 ms 316 KB Output is correct
13 Correct 99 ms 320 KB Output is correct
14 Correct 101 ms 308 KB Output is correct
15 Correct 103 ms 308 KB Output is correct
16 Incorrect 6 ms 212 KB Output isn't correct
17 Halted 0 ms 0 KB -