提出 #69468737


ソースコード 拡げる

/*
~~ Alguma parte/frase foda de um livro/mangá para dar sorte ~~

Uma vez eu gritei, gradualmente, perdi minha voz.
Uma vez eu chorei, gradualmente, perdi minhas lágrimas.
Uma vez eu sofri, gradualmente, me tornei capaz de suportar tudo.
Uma vez me alegrei, gradualmente, me tornei indiferente ao mundo.
E agora, tudo o que me resta é um rosto sem expressão,
meu olhar é tão firme quanto um monólito,
apenas a perseverança permanece no meu coração.
Este sou eu, um personagem insignificante,
Fang Yuan — A Perseverança.

*/
#if defined(LOCAL) or not defined(LUOGU)
#pragma GCC optimize(3)
#pragma GCC optimize("Ofast,unroll-loops")
#endif

#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;

template <class T>
using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;

template <typename T>
ostream& operator<<(ostream &os, const vector<T> &v) {
    os << "[";
    for (size_t i = 0; i < v.size(); ++i) {
        os << v[i] << (i + 1 == v.size() ? "" : ", ");
    }
    os << "]";
    return os;
}

void dbg_out() { cerr << endl; }
template <typename Head, typename... Tail>
void dbg_out(Head H, Tail... T)
{
    cerr << ' ' << H;
    dbg_out(T...);
}
#define dbg(...) cerr << "(" << _VA_ARGS_ << "):", dbg_out(_VA_ARGS_), cerr << endl

#define int long long
#define IOS                           \
    ios_base::sync_with_stdio(false); \
    cin.tie(0)
#define TXTIO                           \
    freopen("entrada.in", "r", stdin);\
    freopen("saida.out", "w", stdout)
#define pb push_back
#define all(v) v.begin(), v.end()
#define f first
#define s second
#define Unique(v)                     \
    sort(all(v));                     \
    v.erase(unique(all(v)), v.end()); \
    v.shrink_to_fit()
#define sz(v) ((int)v.size())
#define sor(x) sort(all(x))
#define ft front()
#define bk back()
#define endl "\n"
#define rep(i, a, b) for (int i = a; i < (b); ++i)
#define MIN(v) *min_element(all(v))
#define MAX(v) *max_element(all(v))
#define LB(c, x) distance((c).begin(), lower_bound(all(c), (x)))
#define UB(c, x) distance((c).begin(), upper_bound(all(c), (x)))
typedef vector<double> vd;
typedef vector<vd> vvd;
typedef vector<vvd> vvvd;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<vvi> vvvi;
typedef long long ll;
typedef double db;
typedef long double ld;
typedef pair<int, int> pii;
typedef pair<int, pii> piii;
typedef vector<pii> vii;
typedef vector<piii> viii;
typedef tuple<int, int, int> tiii;
const int MAXN = 2e5 + 5;
const int INF = 0x3f3f3f3f;
const ll LINF = 0x3f3f3f3f3f3f3f3fll;
const int mod = 1e9 + 7;
const int LOGN = 21;

void solve()
{
    int n, m, k;
    cin >> n >> m >> k;
    vi a(k), b(k);
    vector<set<int>>p(n+1);
    vi fim(n+1, -1);
    rep(i, 0, k) {
        cin >> a[i] >> b[i];
        p[a[i]].insert(b[i]);
        if(sz(p[a[i]]) == m && fim[a[i]] == -1) {
            fim[a[i]] = i;
        }
    }
    vii ord;
    rep(i, 1, n+1) {
        if(fim[i] != -1) ord.pb({fim[i], i});
    }
    sor(ord);
    rep (i, 0, ord.size()) {
        cout << ord[i].second << (i + 1 == sz(ord) ? "" : " ");
    }
    cout << endl;

}

int32_t main()
{
    IOS;
    int tt;
    tt = 1;
    while (tt --> 0)
        solve();
    return 0;
}

提出情報

提出日時
問題 B - Perfect
ユーザ Marcux777
言語 C++ 20 (gcc 12.2)
得点 200
コード長 3473 Byte
結果 AC
実行時間 1 ms
メモリ 3576 KiB

コンパイルエラー

Main.cpp: In function ‘void solve()’:
Main.cpp:68:40: warning: comparison of integer expressions of different signedness: ‘long long int’ and ‘std::vector<std::pair<long long int, long long int> >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
   68 | #define rep(i, a, b) for (int i = a; i < (b); ++i)
      |                                        ^
Main.cpp:112:5: note: in expansion of macro ‘rep’
  112 |     rep (i, 0, ord.size()) {
      |     ^~~

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 200 / 200
結果
AC × 2
AC × 21
セット名 テストケース
Sample example_00.txt, example_01.txt
All example_00.txt, example_01.txt, hand_00.txt, hand_01.txt, hand_02.txt, hand_03.txt, hand_04.txt, hand_05.txt, hand_06.txt, random_00.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt
ケース名 結果 実行時間 メモリ
example_00.txt AC 1 ms 3560 KiB
example_01.txt AC 1 ms 3496 KiB
hand_00.txt AC 1 ms 3500 KiB
hand_01.txt AC 1 ms 3516 KiB
hand_02.txt AC 1 ms 3516 KiB
hand_03.txt AC 1 ms 3448 KiB
hand_04.txt AC 1 ms 3448 KiB
hand_05.txt AC 1 ms 3504 KiB
hand_06.txt AC 1 ms 3376 KiB
random_00.txt AC 1 ms 3476 KiB
random_01.txt AC 1 ms 3564 KiB
random_02.txt AC 1 ms 3432 KiB
random_03.txt AC 1 ms 3440 KiB
random_04.txt AC 1 ms 3504 KiB
random_05.txt AC 1 ms 3504 KiB
random_06.txt AC 1 ms 3484 KiB
random_07.txt AC 1 ms 3520 KiB
random_08.txt AC 1 ms 3576 KiB
random_09.txt AC 1 ms 3500 KiB
random_10.txt AC 1 ms 3496 KiB
random_11.txt AC 1 ms 3504 KiB