알고리즘/백준 알고리즘

[백준] 1683 - A -> B

TIM_0529 2023. 2. 2. 13:44
반응형
//#include <stdio.h>
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#define _CRT_SECURE_NO_WARNINGS
using namespace std;

int main()
{
	int a=0,c=0;
	int b;
	cin >> a >> b;
	while (true)
	{
		if (a > b)
		{
			cout << -1;
			break;
		}
		if (a == b)
		{
			cout << ++c;
			break;
		}
		
		if (b % 2 == 0)
		{
			b /= 2;
		}
		else if(b % 10 ==1)
		{
			b--;
			b /= 10;
		}
		else
		{
			cout << -1;
			break;
		}
		c++;

		
	}
	
	
}

 

풀이방법: 변경되야 하는 순서가 1로 끝나면 뒤 숫자를 잘라내고 0으로 짝수면 2로 나눕니다. 

 

2020 메모리와 0 ms 시간이 걸렸습니다.

반응형

'알고리즘 > 백준 알고리즘' 카테고리의 다른 글

[백준] 11653 - 소인수분해  (0) 2023.02.09
[백준] 10952 - A + B -5  (0) 2023.02.07
[백준] 15552 - A + B  (0) 2023.01.31
[백준] 2438 - 별 찍기 - 1  (0) 2023.01.27
[백준] 11021 - A + B  (0) 2023.01.22