学习C++从娃娃抓起!记录下在学而思小猴编程学习过程中的题目,记录每一个瞬间。侵权即删,谢谢支持!
附上汇总贴:小猴编程C++ | 汇总-CSDN博客
【题目描述】
给定n个正整数 a 1 , a 2 , … , a n a_1,a_2,\dots,a_n a1,a2,…,an,请你找出这些正整数中一共有多少个互不相同的正整数。
例如:3,1,2,1,5中一共有4个互不相同的正整数,分别是1,2,3,5。
【输入】
第一行一个整数n;
第二行n个正整数 a 1 , a 2 , … , a n a_1,a_2,\dots,a_n a1,a2,…,an。
【输出】
一行一个整数,表示互不相同的正整数的数量。
【输入样例】
3
1 2 3
【输出样例】
3
【代码详解】
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6;
int n, x, box[N+10];
int main()
{
cin >> n;
for (int i=1; i<=n; i++) {
cin >> x;
box[x]++;
}
int cnt = 0;
for (int i=1; i<=1e6; i++) {
if (box[i]>0) cnt++;
}
cout << cnt << endl;
return 0;
}
【运行结果】
3
1 2 3
3