체리의 하루
Published 2023. 3. 17. 11:33
[Go] BOJ / 10807번 / 개수 세기 BOJ/Go

💻 문제

 

10807번: 개수 세기

첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거

www.acmicpc.net

 

📜 풀이

<go />
package main import ( "bufio" "fmt" "os" ) func main() { var a, c, count int r := bufio.NewReader(os.Stdin) fmt.Fscanln(r, &a) var slice []int = make([]int, a) for i := 0; i < a; i++ { fmt.Fscan(r, &slice[i]) } fmt.Fscan(r, &c) for i := 0; i < a; i++ { if c == slice[i] { count += 1 } } fmt.Println(count) }

 

✍ 설명

  • Go Array 
    • 동일한 타입의 데이터를 연속적으로 저장
    • 배열의 크기를 동적으로 증가시키거나 부분 배열을 발췌하는 게 불가능 하는 등의 기능 부족
  • Go Slice
    • 크기를 미리 지정하지 않고 크기를 동적으로 변경 가능
    • 부분 배열 발췌 가능
    • make (생성할 슬라이스 타입, Length, Capacity)
      • Length : 슬라이스의 길이
      • Capacity : 내부 배열의 최대 길이 - 지정하지 않으면 Length와 동일
728x90