题目链接: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; }