时间:2016-04-25 20:52:11 星期一
题目编号:[2016-04-25][codeforces][665B - Shopping]
题目大意:已知n个货物的位置,已知每个客人需要的货物,问总共需要走多少次.
分析:直接模拟
#include<cstdio>#include<deque>using namespace std;deque<int> q;deque<int>::iterator itq;int main(){ int n,m,k,tmp; scanf("%d%d%d",&n,&m,&k); for(int i = 0 ; i < k; ++i){ scanf("%d",&tmp); q.push_back(tmp); } int ans = 0; for(int i = 0 ; i < n; ++i){ for(int j = 0 ; j < m ; ++j){ scanf("%d",&tmp); for(itq = q.begin();itq != q.end();++itq){ if(*itq == tmp){ ans += itq - q.begin() + 1; q.erase(itq); q.push_front(tmp); break; } } } } printf("%d\n",ans); return 0;}