题目链接:https://vjudge.net/contest/436484#problem/I
这个题我觉得很简单就是两个数组,一个数组存放给出的数据顺序,第二个存放要找的数据,然后遍历寻找对应数据,输出下标,并将数据移动到第一个,其余向后移即可
以下代码
#include<stdio.h>
int main()
{
int n,m,sum,flag=0;
scanf("%d %d",&n,&m);
int i[n],j[m];
for(int x=0;x<n;x++){
scanf("%d",&i[x]);
}
for(int x=0;x<m;x++){
scanf("%d",&j[x]);
}
for(int x=0;x<m;x++){
flag=0;
for(int y=0;y<n;y++){
if(i[y]==j[x]){
printf("%d ",y+1);
sum=i[y];
for(int z=y-1;z>=0;z--){
i[z+1]=i[z];
}
i[0]=sum;
flag=1;
}
if(flag==1){
break;
}
}
}
return 0;
}
原文:https://www.cnblogs.com/laocaigoul/p/14729974.html