반응형
문제
https://codeforces.com/contest/652/problem/A
문제요약
가브리엘 친구가 애벌레 관찰하는데 낮시간(10am~10pm)은 한시간에 a cm씩 오르고 밤시간엔 b cm씩 내려간다.
현재 h1 cm위치에 있고, h2 cm위치에 가고싶을 때 며칠 걸리는지 알아보자. 처음 시작은 2pm이다.
풀이
a<=b인 경우 첫날 8시간 이내로 사과까지 도달하지 못하면 절대 도달할 수 없다.
그 이외의 경우 첫날 8시간 a cm씩 올라간 후 매일 12*(a-b)씩 올라간다.
도달 가능한 날까지 측정 후 출력한다. (수식으로 간단하게 계산할 수 있는데 귀찮아서 반복문 돌렸다. 수학에 약함)
소스코드
#include <stdio.h>
typedef long long ll;
int main(){
int n, m, a, b;
scanf("%d%d%d%d",&n,&m,&a,&b);
if(a<=b){
if(n+(a<<3)<m) {puts("-1");return 0;}
else{puts("0"); return 0;}
}
n+=a<<3;
for(int i=0; ; ++i){
if(n>=m) {printf("%d",i); return 0;}
n+=12*(a-b);
}
}
반응형
'PS > Educational Codeforces' 카테고리의 다른 글
Educational Codeforces Round 011 A. Co-prime Array (0) | 2021.07.06 |
---|---|
Educational Codeforces Round 009. A (0) | 2021.07.06 |
Educational Codeforces Round 008. A (0) | 2021.07.06 |
Educational Codeforces Round 007. A (0) | 2021.07.02 |
Educational Codeforces Round 006. A (0) | 2021.07.02 |