結果
| 問題 | No.2334 Distinct Cards |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2023-06-02 21:29:31 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.89.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,556 bytes |
| 記録 | |
| コンパイル時間 | 1,999 ms |
| コンパイル使用メモリ | 177,224 KB |
| 実行使用メモリ | 8,576 KB |
| 最終ジャッジ日時 | 2024-12-28 16:30:39 |
| 合計ジャッジ時間 | 2,798 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 8 WA * 14 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
#define rrep(i, n) for (int i = 1; i <= (int)(n); i++)
//素数判定
bool is_prime(const unsigned n) {
switch (n) {
case 0: // fall-through
case 1: return false;
} // n > 1 が保証された
// n より小さい数で n を割って余りを調べる
// 素数ならば自分より小さい数(1以外)では割り切れない
for (unsigned i = 2; i * i <= n; ++i) {
if (n % i == 0) return false;
}
return true;
}
//mod mでaの逆元を計算.
long long modinv(long long a, long long m) {
long long b = m, u = 1, v = 0;
while (b) {
long long t = a / b;
a -= t * b; swap(a, b);
u -= t * v; swap(u, v);
}
u %= m;
if (u < 0) u += m;
return u;
}
//素因数分解(O(√N)).
vector<pair<long long, long long> > prime_factorize(long long N) {
vector<pair<long long, long long> > res;
for (long long a = 2; a * a <= N; ++a) {
if (N % a != 0) continue;
long long ex = 0; // 指数
// 割れる限り割り続ける
while (N % a == 0) {
++ex;
N /= a;
}
// その結果を push
res.push_back({ a, ex });
}
// 最後に残った数について
if (N != 1) res.push_back({ N, 1 });
return res;
}
int main(){
int n,k;
cin>>n>>k;
int a[n];
rep(i,n) cin>>a[i];
sort(a,a+n);
set<int> S;
rep(i,k) S.insert(a[i]);
cout<<S.size()<<endl;
}