AOJ 10030 - Search I

set_intersection: 積集合をもとめる.
第5変数はback_inserter(D)みたいにする.
ようやく一回でとおった.

#include<iostream>
#include<algorithm>
#include<vector>

int main(){
	int n, q, i, j;
	std::vector<int> T, Q, D;
	std::cin >> n;
	for(i=0;i<n;i++){
		std::cin >> j;
		T.push_back(j);
	}
	std::cin >> q;
	for(i=0;i<q;i++){
		std::cin >> j;
		Q.push_back(j);
	}
	std::sort(T.begin(), T.end());
	std::sort(Q.begin(), Q.end());
	std::set_intersection(T.begin(), T.end(),
												Q.begin(), Q.end(),
												std::back_inserter(D));
	std::cout << D.size() << std::endl;
}