체리의 하루
Published 2023. 4. 11. 16:43
[Go] BOJ / 10815번 / 숫자 카드 BOJ/Go

💻 문제

 

10815번: 숫자 카드

첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,

www.acmicpc.net

 

📜 풀이

package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	r := bufio.NewReader(os.Stdin)
	w := bufio.NewWriter(os.Stdout)
	defer w.Flush()

	var n int
	fmt.Fscanln(r, &n)

	var cards = map[int]int{}
	for i := 0; i < n; i++ {
		var input int
		if i == n-1 {
			fmt.Fscanln(r, &input)
		} else {
			fmt.Fscan(r, &input)
		}
		cards[input]++
	}

	var m int
	fmt.Fscanln(r, &m)

	for i := 0; i < m; i++ {
		var num int
		fmt.Fscan(r, &num)
		fmt.Fprintf(w, "%d ", hasCard(cards, num))
	}
}

func hasCard(cards map[int]int, num int) int {
	if cards[num] != 0 {
		return 1
	}
	return 0
}

 

✍ 설명

  • map[Key타입]Value타입 {key값:value값}
    • 특정 키 값에만 이 들어가기에 해당하는 수의 값이 존재하는지 여부 확인 가능 

 

728x90

'BOJ > Go' 카테고리의 다른 글

[Go] BOJ / 10989번 / 수 정렬하기 3  (0) 2023.04.12
[Go] BOJ / 1181번 / 단어 정렬  (0) 2023.04.12
[Go] BOJ / 10814번 / 나이순 정렬  (0) 2023.04.11
[Go] BOJ / 1427번 / 소트인사이드  (0) 2023.04.05
[Go] BOJ / 25305번 / 커트라인  (0) 2023.04.05