체리의 하루

💻 문제

 

2869번: 달팽이는 올라가고 싶다

첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)

www.acmicpc.net

 

📜 풀이

package main

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

func main() {
	var a, b, v int

	r := bufio.NewReader(os.Stdin)
	w := bufio.NewWriter(os.Stdout)

	fmt.Fscanln(r, &a, &b, &v)

	var day = 1

	if (v-a)%(a-b) == 0 {
		day += (v - a) / (a - b)
	} else {
		day += (v-a)/(a-b) + 1
	}

	fmt.Fprintln(w, day)
	w.Flush()
}

 

✍ 설명

  • (a - b) * day+ a >=  v 일 때 더 이상 미끄러지지 않는다는 점을 활용해
    • day = (v - a) / (a - b) + 1 
728x90

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

[Go] BOJ / 15439번 / 베라의 패션  (0) 2023.04.27
[Go] BOJ / 10872번 / 팩토리얼  (0) 2023.04.17
[Go] BOJ / 13909번 / 창문 닫기  (0) 2023.04.17
[Go] BOJ / 4948번 / 베르트랑 공준  (0) 2023.04.17
[Go] BOJ / 4134번 / 다음 소수  (0) 2023.04.17