当前位置:编程学习 > C/C++ >>

问题一八零七:元素插入

print?Description 
 
 
今天同来面试的,还有Mr.true 
Mr.true是一位高中大学都搞竞赛的小超人,而MS也很需要这样的人才。 
于是,不用说,他去面试的时候会得到一点点小特权,那就是他可以少排一会队———漂亮的人力资源MM会给他安排一个靠前的位置。 
 
 
Input 
 
第一行为一个整数T,表示有T组数据。 
每组数据有3行: 
第一行为原队伍已有的人数N; 
第二行有n个以空格隔开的整数表示原队伍面试编号序列; 
第三行为两个整数P、Q,P表示Mr.true拿到的面试编号,Q表示Mr.true将插入队伍中的第Q个位置。 
保证没有相同号码,保证N不大于10000 
 
Output 
 
插入后队伍面试编号的情况。 
 
Sample Input 
 
 


1 2 3 
4 2 

9 8 2 3 
7 1 
 
Sample Output 
 
 
1 4 2 3 
7 9 8 2 3 

Description


今天同来面试的,还有Mr.true
Mr.true是一位高中大学都搞竞赛的小超人,而MS也很需要这样的人才。
于是,不用说,他去面试的时候会得到一点点小特权,那就是他可以少排一会队———漂亮的人力资源MM会给他安排一个靠前的位置。


Input

第一行为一个整数T,表示有T组数据。
每组数据有3行:
第一行为原队伍已有的人数N;
第二行有n个以空格隔开的整数表示原队伍面试编号序列;
第三行为两个整数P、Q,P表示Mr.true拿到的面试编号,Q表示Mr.true将插入队伍中的第Q个位置。
保证没有相同号码,保证N不大于10000

Output

插入后队伍面试编号的情况。

Sample Input


2
3
1 2 3
4 2
4
9 8 2 3
7 1

Sample Output


1 4 2 3
7 9 8 2 3
 


[plain] #include <stdio.h> 
 
int SUM(int num); 
 
int main() 

    int i; 
    int j; 
    int n; 
    int m; 
    int t; 
    int k; 
    int p; 
    int q; 
    int num[10001]; 
     
    scanf("%d", &n); 
 
    while(n--) 
    {    
        scanf("%d", &m); 
        for(i=0; i<m; i++) 
        { 
            scanf("%d", &num[i]); 
        } 
        scanf("%d %d", &p, &q); 
 
        for(i=0; i<q; i++) 
        { 
            if(i==q-1) 
            { 
                t=num[i]; 
                num[i]=p; 
 
                for(j=i+1; j<=m; j++) 
                { 
                   k=num[j]; 
                   num[j]= t; 
                   t=k; 
                } 
            } 
        } 
 
        for(i=0; i<=m; i++) 
        { 
           printf("%d", num[i]); 
           if(i<m) 
           { 
              printf(" "); 
           } 
        } 
        if(n>0) 
        { 
            printf("\n"); 
        } 
    } 
    return 0; 

#include <stdio.h>

int SUM(int num);

int main()
{
    int i;
 int j;
 int n;
 int m;
 int t;
 int k;
 int p;
 int q;
 int num[10001];
   
 scanf("%d", &n);

 while(n--)
 {  
     scanf("%d", &m);
  for(i=0; i<m; i++)
  {
      scanf("%d", &num[i]);
  }
  scanf("%d %d", &p, &q);

  for(i=0; i<q; i++)
  {
      if(i==q-1)
   {
       t=num[i];
    num[i]=p;

    for(j=i+1; j<=m; j++)
    {
       k=num[j];
       num[j]= t;
       t=k;
    }
   }
  }

  for(i=0; i<=m; i++)
  {
     printf("%d", num[i]);
     if(i<m)
     {
        printf(" ");
     }
  }
  if(n>0)
  {
      printf("\n");
  }
 }
    return 0;
}

 

补充:软件开发 , C语言 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,