#28252: 有哪位大大可以幫我看看寫法哪裡有錯?(NA: 90%)


ic231542211 (willie)

學校 : 不指定學校
編號 : 44051
來源 : [123.194.107.200]
最後登入時間 :
2022-09-15 15:14:37
f514. 拼字遊戲 (Spelling) -- TOI練習賽202012新手組第2題 | From: [123.194.107.200] | 發表日期 : 2021-11-21 13:11

#include<stdio.h>

#include<string.h>

 

int main(){

    char str1[101], str2[31];

    int ans[101];

    for(int i = 0; i < 101; i++){//將ans[]的每個位置值以-1帶入

        ans[i] = -1;

    }

    gets(str1);

    gets(str2);

    for(int i = 0; i < strlen(str2); i++){

        for(int j = 0; j < strlen(str1); j++){//str2中的每個字母都會與str1中所有字母掃過一輪

            if(str2[i] == str1[j]){

                ans[i] = j;

                str1[j] = ""; //在str1[j]已找到的字母,用空格取代,避免再次讀取

                break;

            }

        }

    }

    for(int i = 0; i < strlen(str2); i++){

        if(ans[i] != -1){

            printf("%d ", ans[i]+1);

        }

        else{

            printf("X ");

        }

    }

}

 

目前錯在第五個測資,請問如何修改才能完全正確?

,#5: 10% WA (line:1)

您的答案為: 3 X X 4 X X X 2 X X X X X X X X X X X X X X X X X X X X X X X 1 1 1 1 1 5
正確答案為: 32 4 5 2 X 10 7 44 X 54 57 35 8 X 60 24 X 30 53 67 37 47 14 X 18 X 48 41 91 29 1 11 73 76 X 31 64
 
#28256: Re:有哪位大大可以幫我看看寫法哪裡有錯?(NA: 90%)


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.9.74.255]
最後登入時間 :
2024-10-14 22:20:08
f514. 拼字遊戲 (Spelling) -- TOI練習賽202012新手組第2題 | From: [110.26.230.44] | 發表日期 : 2021-11-21 20:22

    char str1[101], str2[31];


把str2陣列大小改大一點就可以了

 
#28259: Re:有哪位大大可以幫我看看寫法哪裡有錯?(NA: 90%)


ic231542211 (willie)

學校 : 不指定學校
編號 : 44051
來源 : [123.194.107.200]
最後登入時間 :
2022-09-15 15:14:37
f514. 拼字遊戲 (Spelling) -- TOI練習賽202012新手組第2題 | From: [140.124.249.31] | 發表日期 : 2021-11-22 17:38

    char str1[101], str2[31];


把str2陣列大小改大一點就可以了


我改好了,謝謝!

 
ZeroJudge Forum