[SWEA] 적고 지우기

문제 보러가기

제한사항

‘0’에서 ‘9’사이의 숫자로 이루어진

길이 1이상 10^4이하의 문자열이 주어진다.

첫번째 생각

배열로 전체탐색하면 문제는 풀릴 것이다.

어떻게하면 전체탐색을 하지않고 바로 가져갈 수 있겠는가

두번째 생각

또또또 문제 잘 못 이해했죠?

문제를 제대로 읽자.

0’에서 ‘9’사이의 숫자로 이루어진

그냥 10개짜리 배열 ON/OFF해주면 된다.

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import java.util.Scanner;

public class Solution {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int T = sc.nextInt();
		sc.nextLine();
		for(int tc=1;tc<=T;tc++) {
			boolean[] arr = new boolean[10];
			String s = sc.nextLine();
			for(int i=0; i<s.length(); i++) {
				int target = s.charAt(i)-'0';
				if ( arr[target] ) {
					arr[target] = false;
				} else {
					arr[target] = true;
				}
			}
			int ans = 0;
			for(int i=0; i<10; i++) {
				if(arr[i]) ans++;
			}
			System.out.println("#"+tc+" "+ans);
		}
	}
}