#15282: 測資好像少一行


mmi366127 (unknown)

學校 : 嘉義市私立嘉華高級中學
編號 : 67582
來源 : [163.27.13.253]
最後登入時間 :
2024-03-13 16:14:39
d436. 10098 - Generating Fast, Sorted Permutation -- UVa10098 | From: [36.237.214.177] | 發表日期 : 2018-09-26 00:37

#include<stdio.h>
#include<string.h>
int t,n,i,c;
int list[128];
char s[200];
char out[200];
void P(int len);
int main()
{
    scanf("%d",&t);
    while(~scanf("%s",s))
    {
    memset(list,0,sizeof(list));
    memset(out,0,sizeof(out));
    for(n=0;s[n]!='\0'&&s[n]!='\n'&&s[n]!='\r';n++);
    for(i=0;i<n;i++)
        list[s[i]]++;
    P(0);
    printf("\n");
    memset(s,0,sizeof(s));
    }
    memset(list,0,sizeof(list));
    memset(out,0,sizeof(out));
    for(i=0;i<9;i++)// ABCDEFGHI<----(測資少的部分)
        s[i] = 'A'+i;
    for(n=0;s[n]!='\0'&&s[n]!='\n'&&s[n]!='\r';n++);
    for(i=0;i<n;i++)
        list[s[i]]++;
    P(0);
    printf("\n");
    memset(s,0,sizeof(s));
    return 0;
}
void P(int len)
{
    if(len==n)
    {
        puts(out);
        return;
    }
    int i;
    for(i=1;i<128;i++)
    {
        if(list[i])
        {
            out[len] = i;
            list[i]--;
            P(len+1);
            list[i]++;
        }
    }
    return;
}

我自已多加了一段輸出才AC的

 
ZeroJudge Forum