728x90
반응형
문제 설명
문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요.
제한 사항
0 < before의 길이 == after의 길이 < 1,000
before와 after는 모두 소문자로 이루어져 있습니다.
입출력 예
before after result
"olleh" "hello" 1
"allpe" "apple" 0
입출력 예 설명
입출력 예 #1
"olleh"의 순서를 바꾸면 "hello"를 만들 수 있습니다.
입출력 예 #2
"allpe"의 순서를 바꿔도 "apple"을 만들 수 없습니다.
내 풀이
Java
import java.util.*;
class Solution {
public int solution(String before, String after) {
int answer = 0;
char[] a = before.toCharArray();
char[] b = after.toCharArray();
Arrays.sort(a);
Arrays.sort(b);
String str1 = new String(a);
String str2 = new String(b);
answer = str1.equals(str2) ? 1 : 0;
return answer;
}
}
C
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
// 파라미터로 주어지는 문자열은 const로 주어집니다. 변경하려면 문자열을 복사해서 사용하세요.
int solution(const char* before, const char* after) {
int answer = 0;
char* a = before;
char* b = after;
for(int i = 0; i < strlen(a) - 1; i++){
for(int j = i + 1; j < strlen(a); j++){
if(a[i] > a[j]){
char temp = a[j];
a[j] = a[i];
a[i] = temp;
}
}
}
for(int i = 0; i < strlen(b) - 1; i++){
for(int j = i + 1; j < strlen(b); j++){
if(b[i] > b[j]){
char temp = b[j];
b[j] = b[i];
b[i] = temp;
}
}
}
if(strcmp(a, b) == 0){
answer = 1;
}
return answer;
}
Python
def solution(before, after):
answer = 0
a = list(before)
b = list(after)
a.sort()
b.sort()
if a == b :
answer = 1
return answer
https://school.programmers.co.kr/learn/courses/30/lessons/120886
728x90
반응형
'코딩테스트 > 프로그래머스 입문' 카테고리의 다른 글
[코딩테스트 Lv.0] 중복된 문자 제거 (0) | 2024.03.13 |
---|---|
[코딩테스트 Lv.0] k의 개수 (0) | 2024.03.12 |
[코딩테스트 Lv.0] 이진수 더하기 (0) | 2024.03.12 |
[코딩테스트 Lv.0] 치킨 쿠폰 (0) | 2024.03.09 |
[코딩테스트 Lv.0] 로그인 성공? (0) | 2024.03.08 |