본문 바로가기

Study/algorithms

[백준] 1436 영화감독 숌

반응형

https://www.acmicpc.net/problem/1436

N번째로 작은 종말의 숫자를 찾는 문제이다.

package main

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

var writer = bufio.NewWriter(os.Stdout)
var reader = bufio.NewReader(os.Stdin)

func printf(f string, a ...interface{}) { fmt.Fprintf(writer, f, a...) }
func scanf(f string, a ...interface{})  { fmt.Fscanf(reader, f, a...) }

var endOfWorldNums = make([]int, 10004)

func checkThreepleSix(n int) bool {
	for i := n; i > 0; i /= 10 {
		if i%1000 == 666 {
			return true
		}
	}
	return false
}
func fillNums() {
	count := 1
	for i := 666; count <= 10000; i++ {
		if checkThreepleSix(i) {
			endOfWorldNums[count] = i
			count++
		}
	}
}

func main() {
	defer writer.Flush()
	fillNums()

	var n int
	scanf("%d\n", &n)
	printf("%d\n", endOfWorldNums[n])
}

'Study > algorithms' 카테고리의 다른 글

[백준] 2108 통계학  (0) 2020.01.25
[백준] 2751 수 정렬하기 golang  (0) 2020.01.25
[백준] 1018 체스판 다시 칠하기  (0) 2020.01.24
[백준] 7568 덩치  (0) 2020.01.22
[백준] 2231 분해합  (0) 2020.01.21