문제 1 / BitXorCondition
-목표 : n개의 이진수가 담긴 배열을 모두 xor연산을 하여 십진수로 변환하는 알고리즘 구현
문제 풀이
XOR 연산
-Integer.parseInt()을 통해 xor연산을 수행
최종 코드
class Solution {
public int solution(String[] arr) {
int answer = 0;
int result = Integer.parseInt(arr[0], 2);
for(int i = 1; i < arr.length; i++){
result ^= Integer.parseInt(arr[i],2);
}
return result;
}
}
문제 2 / CountDivisor
-목표 : 자연수 n의 양의 약수의 개수를 출력하는 프로그램 구현하기
사용한 알고리즘
시간복잡도
문제 풀이
-n보다 작은 i의 제곱근을 검사하면서 약수의 갯수를 찾는다.
최종 코드
class Solution {
public int solution(int n) {
int answer = 0;
for(int i =1; i * i <= n; i++){
if(i * i == n) answer++;
else if(n % i == 0) answer += 2;
}
return answer;
}
}
문제 3 / HexadecimalToBinary
-목표 : 16진수 s를 이진수로 변환하여 출력하는 프로그램 구현.
문제 풀이
-Integer.parseInt로 배열을 십진수로 변환
-Integer.toBinaryString으로 십진수를 2진수 문자열로 변경
최종 코드
class Solution {
public String solution(String s) {
String answer = "";
int change = Integer.parseInt(s, 16);
String binary = Integer.toBinaryString(change);
return binary;
}
}
문제 4 / JoinLetter
-목표 : 배열의 문자열을 , 로 이어서 하나의 문자열로 출력하는 프로그램 구현
문제 풀이
-string.join함수를 사용해서 배열을 문자열로 합쳐 출력을 했다.
최종 코드
class Solution {
public String solution(String[] arr) {
String answer = "";
String strjoin = String.join(",", arr);
return strjoin;
}
}
문제 5 / WordPatternGame
-목표 : 낱말의 패턴이 주어졌을 때, 이 패턴대로 낱말을 골라 사용했을 때 정답인지 오답인지 출력하는 프로그램 구현
문제 풀이
최종 코드
'코딩테스트' 카테고리의 다른 글
알고리즘 문제풀이 3-2 (0) | 2025.03.18 |
---|---|
알고리즘 문제풀이 3-1 (0) | 2025.03.18 |
알고리즘 문제풀이 2-3 (0) | 2025.03.12 |
알고리즘 문제풀이 2-2 (0) | 2025.03.12 |
알고리즘 문제풀이 2-1 (0) | 2025.03.10 |