QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#506007#6429. Let's Play CurlingpagohiaWA 322ms5196kbC++141.6kb2024-08-05 14:38:422024-08-05 14:38:42

Judging History

你现在查看的是最新测评结果

  • [2024-08-05 14:38:42]
  • 评测
  • 测评结果:WA
  • 用时:322ms
  • 内存:5196kb
  • [2024-08-05 14:38:42]
  • 提交

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;

}

详细

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'