Skip to content

[传智杯 #3 决赛] 课程

题目背景

disangan233 喜欢数数,于是他想让你帮他回答一个问题。

题目描述

传智专修学院提供 A,B 两个课程,分别有 n,m 个学生报名。报名 A 的学生的编号为 an,报名 B 的学生的编号为 bm,求有多少个学生同时报名了两个课程。 对于所有数据,n,m,ai,bi20,保证每个课程报名的学生编号不会重复。

输入格式

输入共 3 行。 第 1 行输入 2 个正整数 n,m。 第 2 行输入 n 个正整数 a1an,表示报名课程 A 的学生编号。 第 3 行输入 m 个正整数 b1bm,表示报名课程 B 的学生编号。 学生编号不保证从小到大排序。

输出格式

输出共 11 个整数,表示答案。

样例 #1

样例输入 #1

5 5
1 2 3 4 5
1 3 4 5 6

样例输出 #1

4

提示

样例解释

我们发现,1,3,4,54 名学生同时报名了两门课程,所以答案是 4

题解

c++
#include <bits/stdc++.h>
typedef long long LL;
using namespace std;
LL A[100001];
int main() {
	LL n,k;
	int count;
	cin>>n>>k;
	for(int i = 0; i < n; i++) {
		cin>>A[i];
	}
	for(int i = 0; i < n; i++) {
		for(int j = i+1; j < n;j++) {
			if(A[i]*A[j] <= k) {
				count++;
			}
		}
	}
	cout<<count;
	return 0;
}