Submission #993517
Source Code Expand
#include <bits/stdc++.h> using namespace std; #define int long long // <-----!!!!!!!!!!!!!!!!!!! #define rep(i,n) for (int i=0;i<(n);i++) #define rep2(i,a,b) for (int i=(a);i<(b);i++) #define rrep(i,n) for (int i=(n)-1;i>=0;i--) #define rrep2(i,a,b) for (int i=(a)-1;i>=b;i--) #define all(a) (a).begin(),(a).end() #define rall(a) (a).rbegin(),(a).rend() #define printV(_v) for(auto _x:_v){cout<<_x<<" ";}cout<<endl #define printVS(_vs) for(auto _x : _vs){cout << _x << endl;} #define printVV(_vv) for(auto _v:_vv){for(auto _x:_v){cout<<_x<<" ";}cout<<endl;} cout << endl; #define printP(_p) cout << _p.first << " " << _p.second << endl #define printVP(_vp) for(auto _p : _vp) printP(_p); typedef long long ll; typedef pair<int, int> Pii; typedef tuple<int, int, int> TUPLE; typedef vector<int> vi; typedef vector<vi> vvi; typedef vector<vvi> vvvi; typedef vector<Pii> vp; const int inf = 1e9; const int mod = 1e9 + 7; typedef vvi Graph; signed main() { std::ios::sync_with_stdio(false); std::cin.tie(0); int n, m; cin >> n >> m; vi x(n); rep(i, n) cin >> x[i]; auto c = [](int l, int r) { // 奇数の方が先、どちらも偶数なら小さい方が先 if (l % 2) return true; else if (r % 2) return false; else return l < r; }; using PQ = priority_queue<int, vector<int>, decltype(c)>; // xをmodで分類 vector<PQ> y(m, PQ(c)); rep(i, n) { y[x[i] % m].push(x[i]); } int ans = y[0].size() / 2; if (m % 2 == 0) ans += y[m/2].size() / 2; rep2(i, 1, (m + 1) / 2) { while (!y[i].empty() && !y[m-i].empty()) { y[i].pop(); y[m-i].pop(); ans++; } } rep(i, m) { if (i == 0 || 2 * i == m) continue; map<int, int> mp; while (!y[i].empty()) { mp[y[i].top()]++; y[i].pop(); } for (auto p : mp) { ans += p.second / 2; } } // rep(i, m) { // cerr << i << ":"; // while (!y[i].empty()) { // cerr << y[i].top() << " "; // y[i].pop(); // } // cerr << endl; // } cout << ans << endl; }
Submission Info
Submission Time | |
---|---|
Task | D - Pair Cards |
User | yurahuna |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 2285 Byte |
Status | WA |
Exec Time | 29 ms |
Memory | 7296 KB |
Judge Result
Set Name | sample | all | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 700 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
sample | sample-01.txt, sample-02.txt |
all | sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 01-22.txt, 01-23.txt, 01-24.txt, 01-25.txt, 01-26.txt, 01-27.txt, 01-28.txt, 01-29.txt, 01-30.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-01.txt | AC | 3 ms | 256 KB |
01-02.txt | AC | 16 ms | 2168 KB |
01-03.txt | AC | 17 ms | 2012 KB |
01-04.txt | WA | 21 ms | 2236 KB |
01-05.txt | WA | 19 ms | 2044 KB |
01-06.txt | WA | 22 ms | 2304 KB |
01-07.txt | WA | 21 ms | 1920 KB |
01-08.txt | WA | 21 ms | 2304 KB |
01-09.txt | WA | 21 ms | 2304 KB |
01-10.txt | WA | 25 ms | 3968 KB |
01-11.txt | AC | 29 ms | 6272 KB |
01-12.txt | AC | 23 ms | 2168 KB |
01-13.txt | AC | 20 ms | 3576 KB |
01-14.txt | AC | 17 ms | 2012 KB |
01-15.txt | AC | 21 ms | 2036 KB |
01-16.txt | AC | 21 ms | 2432 KB |
01-17.txt | AC | 20 ms | 2176 KB |
01-18.txt | AC | 21 ms | 2816 KB |
01-19.txt | AC | 21 ms | 2688 KB |
01-20.txt | AC | 26 ms | 7296 KB |
01-21.txt | AC | 17 ms | 2000 KB |
01-22.txt | WA | 21 ms | 2176 KB |
01-23.txt | WA | 21 ms | 2176 KB |
01-24.txt | WA | 21 ms | 2304 KB |
01-25.txt | WA | 22 ms | 3328 KB |
01-26.txt | AC | 25 ms | 5504 KB |
01-27.txt | AC | 18 ms | 5376 KB |
01-28.txt | AC | 7 ms | 3456 KB |
01-29.txt | AC | 4 ms | 1536 KB |
01-30.txt | AC | 7 ms | 3328 KB |
sample-01.txt | AC | 3 ms | 256 KB |
sample-02.txt | AC | 2 ms | 256 KB |