QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#506007 | #6429. Let's Play Curling | pagohia | WA | 322ms | 5196kb | C++14 | 1.6kb | 2024-08-05 14:38:42 | 2024-08-05 14:38:42 |
Judging History
answer
#include<bits/stdc++.h>
#include <unordered_map>
using namespace std;
#define MAXN ((int) 2e5)
const int N = 1e5 + 10;
const int M = 5e4 + 10;
typedef long long ll;
typedef double db;
typedef pair<int, int>pii;
typedef pair<long, long>pll;
int dx[4] = { 0, 1, 0, -1 }, dy[4] = { 1, 0, -1, 0 };
const int mod = 1e9 + 7;
inline long long read()
{
long long w = 1;
long long q = 0;
char ch = ' ';
while (ch != '-' && (ch < '0' || ch>'9')) ch = getchar();
if (ch == '-') w = -1, ch = getchar();
while (ch >= '0' && ch <= '9')
q = q * 10 + ch - '0', ch = getchar();
return w * q;
}
int n, m;
long long arr[N];
long long brr[N];
int check(long long mid,long long a)
{
if (brr[mid] > a)
return 1;
else return 0;
}
void solve()
{
cin >> n >> m;
memset(arr, 0, sizeof(arr));
memset(brr, 0, sizeof(brr));
for (int i = 1; i <= n; i++)
cin >> arr[i];
for (int i = 1; i <= m; i++)
{
cin >> brr[i];
}
sort(arr + 1, arr + n + 1);
sort(brr + 1, brr + m + 1);
int ans = 0;
long long flag = 0;
for (int i = 1; i <= n; i++)
{
if (arr[i] == arr[i - 1]) continue;
long long l = 1;
long long r = m;
while (l < r)
{
long long mid = (l+r+1) / 2;
if (check(mid,arr[i]))
{
r = mid-1;
}
else
{
l = mid;
}
}
if (brr[l] != arr[i])
{
ans++;
}
}
if (ans == 0)cout << "Impossible" << endl;
else cout << ans << endl;
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int tcase = 1;
cin >> tcase;
while (tcase--)
solve();
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 5196kb
input:
3 2 2 2 3 1 4 6 5 2 5 3 7 1 7 3 4 3 1 10 1 1 7 7
output:
2 3 Impossible
result:
ok 3 lines
Test #2:
score: -100
Wrong Answer
time: 322ms
memory: 5140kb
input:
5553 12 19 8 8 11 18 12 9 15 38 6 32 30 30 17 28 33 2 37 20 11 38 36 18 18 30 20 33 13 31 33 37 8 12 6 7 12 14 2 19 2 17 7 4 20 1 13 7 18 23 22 1 16 8 7 5 2 4 2 4 5 8 12 13 16 6 6 5 16 11 5 7 5 13 3 8 3 11 6 9 11 13 8 11 17 19 944782509 244117333 140979583 661724696 617847780 321687699 418677763 725...
output:
5 8 4 2 17 15 10 10 3 7 11 5 9 2 15 5 11 6 6 13 6 7 4 9 16 1 6 10 3 3 1 4 5 14 7 2 16 16 6 11 13 20 11 13 6 19 11 8 10 2 11 13 19 19 8 5 8 15 19 6 12 4 1 17 3 10 10 10 3 6 12 3 7 8 2 5 2 3 1 1 7 12 16 2 2 4 19 18 4 5 8 14 12 14 5 5 4 6 7 11 3 6 17 4 19 2 1 3 16 5 11 15 20 14 1 2 4 9 5 10 1 3 8 18 16...
result:
wrong answer 1st lines differ - expected: '1', found: '5'