TIL/알고리즘 공부
백준 1065번 Swift 알고리즘 연습
여의도사노비
2022. 8. 4. 18:47
728x90
그간 소홀히 했기 때문에 오늘은 2문제 풀었다.. 이번주 주말에도 풀 예정!
이 문제를 풀면서 생각한 논리적 흐름은
- 일단 '한수'를 이해하기가 너무 어렵다..! 등차긴 한데... 그래서 뭐..?
- 결국 이해한 것이 N을 입력했을 경우 N보다 작은 자연수 중 '등차' 성질을 지닌 숫자는 count += 1 해줘라 라고 이해했다.
- 그래서 1의 자릿수는 그냥 무조건 count += 1, 10의 자릿수도 막상 들여다보니...
10, 21, 33, 89 어떤 형태가 됐든 전부 count += 1 이었다. - 그렇다면 1 ~ 10의 자릿수를 입력하면 무조건 count += 1 해주고 100의 자릿수만 신경 써보자
- 100의 자릿수는 각 자릿수 별로 값의 차이를 구해서 그게 일치하기만 하면 등차로 볼 수 있겠다!
- 그렇게 일치한 경우만 count += 1 해주자! 라는 결론에 다다랐다.
이 문제야 말로 정말 정형화된 논리, 수학적 알고리즘이 있을 것으로 보인다... (무조건 있을듯.. ㅠ)
하지만 일단 최대한 논리적으로 접근해보려고 노력했다 사실 값이 1000 넘어가면 또 바껴야 할 코드라 문제가 많다!
* 1065번
정리(Today I Learned)
- 때로는 쉽게 가는 것도 길일지도!
- 특별히 알게된 지식은 없다!