smooth waters run deep

분류 전체보기 122

[백준] 1051_숫자정사각형 (Silver3) (C++)

어떻게 하면 더 똑똑하게 풀 수 있을까 고민했는데 bruce force 방법 뿐이었다. 문제 해결에 필요한 부분은 진작에 완성했는데 계속 '틀렸습니다!'가 떠서.. '맞았습니다!'까지 한참 걸렸다. 이유는 입력받는 데에 문제가 있다는 걸 캐치하지 못했기 때문!! "C++에서 제공하는 정수형으로는 길이 50의 정수를 입력받을 수 없습니다. 일단 문자열로 입력받은 후에 직접 원하는 타입으로 가공해야 합니다." 라는 게시판 속 해결사 댓글을 보고 드디어 '맞았습니다' (코드 속 12-17 부분) 문제에서 일부러 50까지 입력을 받으려고 했나하는 생각이 들었다. 나한테는 무시무시한 함정이었다.. ** 잊지말자 !! 문자열 -> 숫자 문자 - '0' 숫자 -> 문자열 숫자 + '0' **코드짜면서 생각했던 부분 ..

1d-1c/BOJ 2020.04.26

도둑질 (C++)

코딩테스트 연습 - 도둑질 도둑이 어느 마을을 털 계획을 하고 있습니다. 이 마을의 모든 집들은 아래 그림과 같이 동그랗게 배치되어 있습니다. 각 집들은 서로 인접한 집들과 방범장치가 연결되어 있기 때문에 인접한 programmers.co.kr 처음으로 알고리즘 문제를 풀었다. ** 생각해야될 조건 - 인접한 집은 도둑질이 안된다. - 원 모양이므로, 첫 번째 집-마지막 집 = 인접하다 - i번째 집으로 생각해서 일반식을 만들어야함! ** 코드로 바꾼다면 1. dp[i] : i번째 집까지 털었을 때 최댓값 i-1번째 도둑질 O 경우 : i번째 집을 털 수 X -> dp[i-1] i-1번째 도둑질 X 경우 : i번째 집을 털 수 O -> dp[i-2] + money[i] 그러므로 dp[i] = max( d..

1d-1c/Programmers 2020.04.25