반응형
문제
게임의 아웃복서 캐릭터는 필살기인 '럭키 스트레이트' 기술이 있다. 이 기술은 강력한 대신 게임 내에서 점수가 특정 조건을 만족할 때만 사용할 수 있다.
특정 조건이란 현재 캐릭터의 점수를 N이라고 할 때 자릿수를 기준으로 점수 N을 반으로 나눠 왼쪽 부분의 각 자릿수의 합과 오른쪽 부분 각 자릿수의 합을 더한 값이 동일한 상황을 의미한다. 123,402점이라면 왼쪽은 1+2+3=6, 오른쪽은 4+0+2=6으로 럭키 스트레이트를 사용할 수 있다.
입력 조건
첫째줄에 점수 N이 주어진다. (N의 자릿수는 항상 짝수의 형태로 주어진다.)
출력 조건
첫째 줄에 럭키 스트레이트가 가능하면 "LUCKY" 불가능하면 "READY"라고 출력한다.
풀이
String 타입으로 점수를 입력받아, 문자열의 길이의 절반까지의 합과 절반 이후의 합을 비교한다.
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
sc.close();
// 문자열로 변환
String s = String.valueOf(n);
int half = s.length() / 2;
// 왼쪽 합
int left = 0;
for (int i = 0; i < half; i++) {
left += (s.charAt(i) - '0');
}
// 오른쪽 합
int right = 0;
for (int i = half; i < s.length(); i++) {
right += (s.charAt(i) - '0');
}
System.out.println((left == right)? "LUCKY" : "READY");
} // end main
}
'Algorithm' 카테고리의 다른 글
[Algorithm] 문자열 재정렬 (0) | 2021.06.04 |
---|---|
[Algorithm] 무지의 먹방 라이브 (0) | 2021.06.03 |
[Algorithm] 볼링공 고르기 (0) | 2021.06.02 |
[Algorithm] 문자열 뒤집기 (0) | 2021.06.01 |
[Algorithm] 뱀 (0) | 2021.05.31 |