题目出处:http://codeforces.com/problemset/problem/886/C
题目大意:很多墓穴之间有通道,探险家来回穿梭并记录日志
日志规则:第一次到该墓穴计时间t,0<=t<当前时间i;再次经过记录i
#include<iostream> #include<set> using namespace std; //集合的运用 int main(){ set<int> all; int n,x; cin>>n; for(int i=0;i<n;i++){ cin>>x; all.insert(x); } cout<<n-all.size()+1<<endl; return 0; }
本题网上有很多方法解决,但是代码长度都很长。
这个方法虽然实现起来很简单,利用的集合set的size统计数字的不同个数。
但是理解有点麻烦。