POJ 3916 - Duplicate Removal
http://poj.org/problem?id=3916
概要
N 個の要素からなる数列が与えられるので,それの隣接している重複した要素を取り除いた後の数列を答える.
制約
- 0 < N <= 25
解法
unique() するだけ.
poj/3916.cc1 #include <iostream> 2 #include <vector> 3 #include <iterator> 4 #include <algorithm> 5 using namespace std; 6 7 int main() 8 { 9 int N; 10 while (cin >> N && N != 0) { 11 vector<int> v(N); 12 for (int i = 0; i < N; i++) { 13 cin >> v[i]; 14 } 15 const vector<int>::iterator last = unique(v.begin(), v.end()); 16 copy(v.begin(), last, ostream_iterator<int>(cout, " ")); 17 cout << "$" << endl; 18 } 19 return 0; 20 }