사자자리
[C언어] 백준 9996번: 한국이 그리울 땐 서버에 접속하지 본문
https://www.acmicpc.net/problem/9996
9996번: 한국이 그리울 땐 서버에 접속하지
총 N개의 줄에 걸쳐서, 입력으로 주어진 i번째 파일 이름이 패턴과 일치하면 "DA", 일치하지 않으면 "NE"를 출력한다. 참고로, "DA"는 크로아티어어로 "YES"를, "NE"는 "NO"를 의미한다.
www.acmicpc.net
#include <stdio.h>
#include <string.h>
int main(){
char pattern[101], left[101] = "", right[101] = "";
char test[101], tleft[101] = "", tright[101] = "";
char yesno[100][3];
int n, star;
scanf("%d", &n);
scanf("%s", pattern);
for (int i = 0; i < strlen(pattern); i++){
if (pattern[i] == '*') star = i;
}
for (int i = 0; i < star; i++){
left[i] = pattern[i];
}
int k = 0;
for (int i = strlen(pattern) - 1; i > star; i--){
right[k] = pattern[i];
k++;
}
for (int j = 0; j < n; j++){
scanf("%s", test);
for (int i = 0; i < star; i++){
tleft[i] = test[i];
}
k = 0;
for (int i = strlen(test) - 1; i > strlen(test) - (strlen(pattern) - star); i--){
tright[k] = test[i];
k++;
}
if (strcmp(left, tleft) == 0 && strcmp(right, tright) == 0) strcpy(yesno[j], "DA");
else strcpy(yesno[j], "NE");
if (strlen(pattern) - 1 > strlen(test)) strcpy(yesno[j], "NE");
}
for (int j = 0; j < n; j++){
printf("%s\n", yesno[j]);
}
return 0;
}
'C언어 > C언어 문제' 카테고리의 다른 글
[C언어] 백준 1547번: 공 (0) | 2022.08.11 |
---|---|
[C언어] 백준 2755번: 이번학기 평점은 몇 점? (0) | 2022.08.11 |
[C언어] 백준 1032번: 명령 프롬프트 (0) | 2022.08.11 |
[C언어] 백준 2747번: 피보나치 수 (0) | 2022.08.11 |
[C언어] 백준 2439번: 별 찍기 - 2 (0) | 2022.08.11 |
Comments