-
baekjoon java 1463 [1 만들기]java 문제 2022. 6. 10. 18:30
https://www.acmicpc.net/problem/1463
1463번: 1로 만들기
첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.
www.acmicpc.net
문제
문제에 대한 나의 정리
우선은 문제를 보고 조건 3개를 생각했다.
1. x가 3으로 나누어 떨어지면 3으로 나눈다.
2.x가 2로 나누어 떨어지면 2로 나눈다.
3.1을 뺀다.
옆에 적힌 글을 보면 처음에는 3가지 조건을 적용하여서 모든 경우의 수에 대해 검사 후 가장 최소 횟수를 구하려고 했다.
그렇지만 코드의 길이는 엄청나게 길어지고 시간 복잡도 또한 너무 효율이 안나오게 코드를 구성하였고 결과적으로 틀렸다.
풀이
https://st-lab.tistory.com/133
[백준] 1463번 : 1로 만들기 - JAVA [자바]
www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 문제 알고리즘 [접근 방법] 생각보다 어렵지 않게 풀 수 있는 문제다...
st-lab.tistory.com
정해둔 30분이 지나도록 생각이 나지 않아서 구글에 검색을 통해 다른 사람의 코드를 참고하기로 했다.
풀이를 차분하게 읽고 나서 나름대로 내가 놓쳤던 것들을 정리했다.
1. 2와 3으로 나누어 진다면 6 또한 나눠진다.
2. 경우의 수에 따른 코드를 따로 작성할게 아니라 재귀함수를 통하여 결과를 도출한다.
2개를 참고하여서 다시 문제를 풀어보았고 푸는데 성공했다.
지금은 남의 코드를 보고 비슷하게 적어야지 문제를 통과하는 수준이지만 더 열심히해서 나만의 방식으로도 문제를 풀 수 있을 때까지 열심히 해야겠다.
Ps. 혹시나 글을 보시고 고쳐야 하는 점이나 해주실 말씀들은 댓글 부탁드립니다.
'java 문제' 카테고리의 다른 글
baekjoon java 11726 [2 x n 타일링] (0) 2022.06.10 Programmers 코딩테스트연습 <크레인 인형 뽑기> (0) 2022.05.09 Programmers 코딩테스트 연습문제 <모음사전> (0) 2022.05.04