본문 바로가기
Problem Solving/SWEA

[SWEA] 8821. 적고 지우기

by 테리는당근을좋아해 2020. 2. 25.

문제

진수는 어린 동욱이에게 숫자 공부를 시키고 있다.

진수는 숫자를 여러 번 말한다.

그러면 동욱이는 진수가 부르는 숫자를 공책에 적거나 지운다.

숫자를 적을 때는 공책에 그 숫자가 적혀 있지 않을 때이고,

숫자를 지울 때는 공책에 그 숫자가 적혀 있을 때이다.

처음 공책에는 어떤 숫자도 적혀 있지 않다고 할 때,

마지막에 공책에 적힌 숫자의 개수를 구하는 프로그램을 작성하라.

 

풀이방법

동욱이가 부르는 숫자는 0 ~ 9 사이이다. 

 

10 크기의 1차원 배열을 선언하고 0으로 초기화한다.

 

동욱이가 말하는 수와 같은 인덱스의 원소가 0이면 1, 1이면 0으로 대입해가며

 

동욱이가 말하는 일련의 숫자를 읽는다.

 

소스코드

package samsung;

import java.util.*;

public class s_8821 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int test = sc.nextInt();
		
		for(int t = 1; t <= test; t++) {
			int[] a = new int[10];
			String s = sc.next();
			for(int i = 0; i < s.length(); i++) {
				int tmp = s.charAt(i) - '0';
				if(a[tmp] == 0)
					a[tmp] = 1;
				else
					a[tmp] = 0;
			}
			int cnt = 0;
			for(int i = 0; i < a.length; i++) {
				if(a[i] == 1)
					cnt++;
			}
			System.out.println("#" + t + " " + cnt);
		}
	}
}

 

출처

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AW37UDPKCgQDFATy&categoryId=AW37UDPKCgQDFATy&categoryType=CODE

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

'Problem Solving > SWEA' 카테고리의 다른 글

[SWEA] 9229. 한빈이와 Spot Mart  (0) 2020.02.25
[SWEA] 8931. 제로  (0) 2020.02.25
[SWEA] 8741. 두문자어  (0) 2020.02.25
[SWEA] 8658. Summation  (0) 2020.02.25
[SWEA] 6808. 규영이와 인영이의 카드게임  (0) 2020.02.24

댓글