2016년 2월 29일 월요일

BOJ 11726

2xn 타일링 문제
dynamic programming

이 문제 역시 분명 백준님께서 설명해주신대로 했는데 계속 틀렸다고 나오길래...
질문을 찾아봤더니..(문제에 관련된 질문을 바로 볼 수 있게 되어있어서 참 좋은듯)
이게 n이 커짐에 따라 타일링할 수 있는 경우의 수가 매우 많아져서
10007로 나눈 나머지를 출력하라는 조건이 있고, 이 조건을 연산 마지막에 해줄 것이 아니라
연산 하나하나 마다 %10007을 해서 d[n]에 저장해줘야 하는 것이었다...

BOJ 1463

Dynamic Programming
백준님께서 수업시간에 설명해주신대로 풀었는데 계속 틀렸다고 나오고,
gcc로 돌려보니까 답은 제대로 나오는데... 도대체 뭐가 잘못된 것일까 고민하면서
문제를 다시 읽었다.

내가 dp를 하면서 잊고 있던게 배열을 index 0부터 사용하지 않고, 1부터 사용했다는 점...
입력 값의 범위가 1이상 10^6이하인데, 내가 배열을 d[1000000] <- 이렇게 선언해놓고
1부터 사용했기에 10^6, 즉 1000000에 대한 결과값을 구할 수 가 없었던 것이다...
1463번 문제의 test값에 1000000이 있나보다...

다음부터는 이런 실수 하지 않도록 노력해야겠다.

빨리 다음문제 복습해야지...

2016년 2월 6일 토요일

Algorithm / Problem Solving

알고리즘, 문제 해결 공부 시작
일단 C++ 과 C++ STL부터 공부 해보자.

코딩은 Linux에서 vim과 gcc를 이용해서 하자.