문제 이름 : 물리공부 (17248번)
문제 유형 : 수학
작성 언어 : C
문제
전북대학교 컴퓨터공학부 신입생인 시현이는 공대 필수 교양인 기초물리를 수강중이다.
공부를 열심히 하는 시현이는 물리 문제집를 풀다가 다음과 같은 문제를 만났다.
평소 물리를 좋아하던 시현이는 ㄱ, ㄴ번은 단숨에 알았지만, ㄷ번을 풀 수 없어 절망에 빠져 있다.
절망에 빠져있는 시현이를 도와주도록 하자.
입력
첫째 줄에 테스트케이스 T를 입력한다. (1 ≤ T ≤ 100)
다음 줄부터 각 테스트케이스마다 자동차 A와 자동차 B의 속력 X, Y, 그리고 자동차 A의 가속도 Z가 주어진다. (각각의 입력은 띄어쓰기로 구분한다.)
단, 0 ≤ X < Y ≤ 10,000이고, 0 < Z ≤ 10,000이다.
출력
각 테스트케이스마다 자동차 A가 자동차 B와 속력이 같거나 커지는 시간(초)을 출력한다.
예제 입력 1
3
20 60 2
0 100 10
0 1 10000
예제 출력 1
6
4
1
A 자동차는 20m/s로, B 자동차는 60m/s로 달리고 있을 때
A의 속도가 크기 2의 가속도에 의해 1초에 22m/s, 2초에 26m/s, 3초에 32m/s ... 로 증가 하게 되어서 A의 속도가 6초에 62m/s가 된다.
풀이
예제에서 A의 속도가 0초에 20
1초에 22(20 (0s) + 1 * 2) ,
2초에 26 (22 (1s) + 2 * 2) ,
3초에 32 (26 (2s) + 3 * 2) 인것을 계산해주면된다.
코드
#include <stdio.h>
int main(void)
{
int T;
int a,b,c;
scanf("%d",&T);
for(int i=0;i<T;i++)
{
scanf("%d %d %d",&a,&b,&c);
for(int j=1; ;j++)
{
a = a + j * c;
if(a>=b)
{
printf("%d\n",j);
break;
}
}
}
}
https://www.acmicpc.net/problem/17248
'알고리즘' 카테고리의 다른 글
BOJ_11365_!밀비 급일 (0) | 2021.07.19 |
---|---|
BOJ_14626_ISBN (1) | 2021.07.18 |
BOJ_1759_암호 만들기 (0) | 2021.07.16 |
BOJ_2579_계단 오르기 (0) | 2021.07.15 |
C++ queue (0) | 2021.07.14 |
댓글