http://koistudy.net/?mid=prob_page&NO=2661
경곽이는 두 정수 a, b를 가지고 있으며 "a+=b"와 "b+=a"를 원하는 만큼 수행 할 수 있다. 경곽이는 이 두 연산과 a, b를 가지고 a와 b값 중 하나를 n보다 크게 만들고 싶어한다.
경곽이가 수행해야 하는 최소의 작업수를 출력해보자.
+=연산을 이용하여 특정 수까지 얼마나 연산을 해야하는지를 구하는 문제이다.
구현을 평가하는 문제로, 문제를 잘 읽고 불필요한 연산을 하지 않도록 조심하며 구현한다면 쉽게 풀리는 문제이다.
코드
#include<iostream>
using namespace std;
int main()
{
int a, b,wannabe;
cin >> a >> b >> wannabe;
int num = 0;
while (a <= wannabe && b <= wannabe)
{
if (a>b)
b += a;
else
a += b;
num++;
}
cout << num;
}
여담
백준, 코드업 보다 덜 알려진 사이트인 KOISTUDY를 처음 접하게 된 문제이다.
코이스터디는 경기과학고에서 운영하는 사이트인데, 문제마다 경곽이라는 친근한 아이가 나와 약간의 짜증과 함께 뇌리에 깊게 박힌다. 사실 이 사이트 이름이 잘 생각나지 않아서 경곽이라고 검색해서 찾았다
'코딩테스트' 카테고리의 다른 글
백준 11047번 동전0 C++ 풀이 (0) | 2022.12.13 |
---|---|
프로그래머스 신규 아이디 추천 C++ 풀이 (0) | 2022.12.09 |
백준 2178번 미로 탐색 C++ 풀이 (0) | 2022.12.09 |
프로그래머스 숫자 문자열과 영단어 C++ 풀이 (0) | 2022.12.09 |
백준 2442번 별 찍기 - 5 C++ 풀이 (0) | 2022.12.09 |
댓글