-
[Softeer] [21년 재직자 대회 예선] 전광판Algorithm/Softeer 2024. 2. 4. 13:00
Softeer - 현대자동차그룹 SW인재확보플랫폼
softeer.ai
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.Map; import java.util.StringTokenizer; public class 전광판 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; int T = Integer.parseInt(br.readLine()); Map<Character,String> lights = new HashMap<>(); lights.put('0', "1110111"); lights.put('1', "0010010"); lights.put('2', "1011101"); lights.put('3', "1011011"); lights.put('4', "0111010"); lights.put('5', "1101011"); lights.put('6', "1101111"); lights.put('7', "1110010"); lights.put('8', "1111111"); lights.put('9', "1111011"); lights.put(' ', "0000000"); for(int tc = 1; tc <= T; tc++) { st = new StringTokenizer(br.readLine()); int answer = 0; String A = st.nextToken(); String B = st.nextToken(); String A_blank = ""; String B_blank = ""; for(int i = 0; i < 5 - A.length(); i++) { A_blank += " "; } for(int i = 0; i < 5 - B.length(); i++) { B_blank += " "; } A = A_blank + A; B = B_blank + B; for(int i = 0; i < 5; i++) { for(int j = 0; j < 7; j++) { if(lights.get(A.charAt(i)).charAt(j) != lights.get(B.charAt(i)).charAt(j)) { answer++; } } } System.out.println(answer); } } }
- 전구의 스위치 작동 여부를 판단하기 위해 전구마다 번호를 부여해서 각 0, 1, 2, ... 9, 빈 전구까지의 값을 Map에 저장했다.
- 각 전광판은 길이가 맞지 않을 수도 있어서 빈공백을 통해 그 차이를 매꾸었다.
- 전구의 스위치는 총 7개가 있어서 한 전광판의 번호마다 비교하여 다를 때 스위치를 다시 눌러야하므로 answer를 1 증가시켰다.
'Algorithm > Softeer' 카테고리의 다른 글
[Softeer] [21년 재직자 대회 예선] 비밀 메뉴 (0) 2024.02.03 [Softeer] [21년 재직자 대회 예선] 회의실 예약 (1) 2024.02.02 [Softeer] 바이러스 (0) 2024.01.29