Submission #7183130
Source Code Expand
#include <bits/stdc++.h> using namespace std; typedef unsigned long long ull; typedef long long ll; typedef pair<int, int> pii; typedef pair<ll, ll> pll; typedef pair<double, double> pdd; const ull mod = 1e9 + 7; #define REP(i,n) for(int i=0;i<(int)n;++i) //debug #define dump(x) cerr << #x << " = " << (x) << endl; #define debug(x) cerr << #x << " = " << (x) << " (L" << __LINE__ << ")" << " " << __FILE__ << endl; template<class S, class T> ostream& operator << (ostream& os, const pair<S, T> v){ os << "(" << v.first << ", " << v.second << ")"; return os; } template<class T> ostream& operator << (ostream& os, const vector<T> v){ for(int i = 0; i < v.size(); i++){if(i > 0){os << " ";} os << v[i];} return os; } template<class T> ostream& operator << (ostream& os, const vector<vector<T>> v){ for(int i = 0; i < v.size(); i++){if(i > 0){os << endl;} os << v[i];} return os; } vector<ll> cnt(101010, 0); vector<ll> mo(101010, 0); int main(){ cin.tie(0); ios::sync_with_stdio(false); ll N, M; cin >> N >> M; vector<ll> X(N); REP(i, N) cin >> X[i]; REP(i, N) cnt[X[i]]++; REP(i, 101010) mo[i%M] += cnt[i]; ll res = 0; res += mo[0]/2; if(M%2==0) res += mo[M/2]/2; REP(i, (M-1)/2){ int x = i+1; int y = M-x; ll sumx = mo[x],sumy = mo[y]; if(sumx > sumy) swap(x, y), swap(sumx, sumy); //dump(x) dump(y) for(int k=y;k<101010;k+=M){ while(cnt[k]>=2 && sumy-2 >= sumx){ cnt[k] -= 2; sumy -= 2; res++; } } res += sumx; //dump(res) } cout << res << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Pair Cards |
User | theory_and_me |
Language | C++14 (GCC 5.4.1) |
Score | 700 |
Code Size | 1630 Byte |
Status | AC |
Exec Time | 11 ms |
Memory | 2688 KB |
Judge Result
Set Name | sample | all | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 700 / 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, sample-01.txt, sample-02.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01-01.txt | AC | 3 ms | 1792 KB |
01-02.txt | AC | 11 ms | 2688 KB |
01-03.txt | AC | 11 ms | 2688 KB |
01-04.txt | AC | 11 ms | 2688 KB |
01-05.txt | AC | 11 ms | 2688 KB |
01-06.txt | AC | 11 ms | 2688 KB |
01-07.txt | AC | 11 ms | 2688 KB |
01-08.txt | AC | 11 ms | 2688 KB |
01-09.txt | AC | 11 ms | 2688 KB |
01-10.txt | AC | 11 ms | 2688 KB |
01-11.txt | AC | 11 ms | 2688 KB |
01-12.txt | AC | 11 ms | 2688 KB |
01-13.txt | AC | 11 ms | 2688 KB |
01-14.txt | AC | 11 ms | 2688 KB |
01-15.txt | AC | 11 ms | 2688 KB |
01-16.txt | AC | 11 ms | 2688 KB |
01-17.txt | AC | 11 ms | 2688 KB |
01-18.txt | AC | 11 ms | 2688 KB |
01-19.txt | AC | 11 ms | 2688 KB |
01-20.txt | AC | 11 ms | 2688 KB |
01-21.txt | AC | 11 ms | 2688 KB |
01-22.txt | AC | 11 ms | 2688 KB |
01-23.txt | AC | 11 ms | 2688 KB |
01-24.txt | AC | 11 ms | 2688 KB |
01-25.txt | AC | 11 ms | 2688 KB |
01-26.txt | AC | 11 ms | 2688 KB |
01-27.txt | AC | 7 ms | 2176 KB |
01-28.txt | AC | 3 ms | 1920 KB |
01-29.txt | AC | 3 ms | 1792 KB |
01-30.txt | AC | 3 ms | 1792 KB |
sample-01.txt | AC | 3 ms | 1792 KB |
sample-02.txt | AC | 3 ms | 1792 KB |