# progrmmers

프로그래머스 코딩테스트 연습 | 숫자 변환하기
코딩테스트 연습 문제 LV.2 숫자 변환하기 - 문제 바로가기 문제 설명 자연수 x를 y로 변환하려고 합니다. 사용할 수 있는 연산은 다음과 같습니다. x에 n을 더합니다. x에 2를 곱합니다. x에 3을 곱합니다. 자연수 x, y, n이 매개변수로 주어질 때, x를 y로 변환하기 위해 필요한 최소 연산 횟수를 return하도록 solution 함수를 완성해주세요. 이때 x를 y로 만들 수 없다면 -1을 return 해주세요. 제한사항 1 ≤ x ≤ y ≤ 1,000,000 1 ≤ n < y 접근 방법 알고리즘 종류 : BFS dp로도 풀 수 있는데 시작할 때 bfs로 접근을 해서 bfs로 풀었다. x가 할 수 있는 연산은 3가지 이므로 해당 연산으로 이동함. 만약 들린적

[프로그래머스] H-Index
H-Index 문제 설명 H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용 되었다면 h의 최댓값이 이 과학자의 H-Index 입니다. 어떤 과학자가 발표한 논문 인용 횟수를 담은 배열 citations가 매개변수로 주어질 때, 이 과학자의 H-Index를 return하도록 solution 함수를 작성해주세요. 문제 풀이 문제 예시를 보면 [3, 0, 6, 1, 5]에서 3편의 논문이 6번, 5번, 3번으로 3번 이상 인용되었고
프로그래머스 12924
해당 문제는 얻어 맞춘 느낌이 강하다. 다시 한 번 복습해야 할 것 같다. 다음은 얻어 맞춘 느낌의 풀이이다. 일단 문제의 예시를 보면 양쪽 끝이 변하는 것을 확인할 수 있었다. 그래서 투포인터 알고리즘을 바로 떠올릴 수 있었다. 오랜만에 문제를 풀어서 그런지 right를 잘못 설정했다. 그런데도 문제없이 통과가 되었다. 해당 알고리즘은 right를 고정시켜놓고 left만 변화시키면서 test 하기 때문에 right 변수가 사실상 의미가 없다. 그래서 right를 n으로 바꿔봤다. right를 n으로 바꿨을 뿐인데 효율성에서 통과하지 못한다. 아무리 생각해봐도 무슨 이유인지 모르겠다.. 다른 분들에게 여쭤봐도 모르신다. 아시는 분은 꼭 댓글 달아주시길 바랍니다. 어찌됐던 투포인터 알고리즘이라고 했지만 끼워맞춘 쌩구현 알고리즘으로 푼 것 같은 느낌이라 정석대로 다시 풀었다. 이제 좀 제대로 된 풀이가 된 것 같다. 기억 할 점 예시에서 양 끝을 바꿔가며 케이

[Programmers] 음양더하기
문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/76501 풀이 > dictionary를 통해 if문을 통하지 않고 효율성을 높였다. Solution