C#组成考题字符串

时间: 1ms        内存:128M

描述:

假定已经获取题库中的试题号,并存放在数组arrayKT中。例如, int [] arrayKT={10,13,18,19,20,22,30,31}。定义一个静态成员方法,该方法实现从上述数组中随机抽出n(n=arrayKT.Length-1)道考题,并组成一个考题字符串。比如,随机从arrayKT中抽取n题组成考题字符串:“10,13,18,20,22,30,31”。要求,组成考题字符串中考题不重复,输出所有可能的字符串。 

输入:

题目的个数
数组中的考题号;

输出:

所有可能的考题字符串;

示例输入:

5
1 2 3 4 5

示例输出:

1 2 3 4
1 2 3 5
1 2 4 5
1 3 4 5
2 3 4 5

提示:

参考答案(内存最优[1120]):

#include<stdio.h>
int main()
{
    int a[10];
    int i,j,s,k,e,m,sum,n;
    k=0;
    scanf("%d",&sum);
    for(i=0;i<sum;i++)
    {
        scanf("%d",&a[i]);
    }
        for(s=0;s<sum;s++){
            for(i=0;i<sum;i++){
                e=sum-s-1;
                if(i!=e) printf("%d ",a[i]);
        }
        printf("\n");
    }
    return 0;
}

参考答案(时间最优[3]):

#include<stdio.h>
int main()
{
    int a[10];
    int i,j,s,k,e,m,sum,n;
    k=0;
    scanf("%d",&sum);
    for(i=0;i<sum;i++)
    {
        scanf("%d",&a[i]);
    }
        for(s=0;s<sum;s++){
            for(i=0;i<sum;i++){
                e=sum-s-1;
                if(i!=e) printf("%d ",a[i]);
        }
        printf("\n");
    }
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。