매애앤 처음 알고리즘 문제 풀 때 어떻게 풀지 생각하고 손검증 해보느라 시간 다 쓰고 정작 코딩할 땐 지겨워서 포기했었는데
그래서 요즘엔 '조금만 더 하면 뭐가 될것같은데'하는 일단 코딩을 시작하고 하다가 생각나면 중간중간 점검한다.
드래곤 커브 문제는 규칙에 따라 선 정보를 저장하는 벡터를 만들어서 풀었다.
시작점 |
방향 |
끝점 |
3,3 |
<- |
4,3 |
... |
... |
... |
다음 세대의 드래곤커브를 구할 땐 벡터에서 역순으로 규칙을 적용시켜 다음 선 정보를 저장한다.
코드 제출하고 정답은 받았는데, 제출하고 보니 벡터에서 i번째 끝점과 i+1번째 시작점은 항상 같은데 데이터가 중복되어있고,
이 문제가 3시간동안 2문제 푸는 삼성SW역량테스트 기출인데 그런것 치고 코드가 길고(벡터때문에 클래스 정의 등...) 오래걸린 것 같아 마음에 걸렸다.
다른 풀이를 검색해보니 훨씬 간결했다.
드래곤커브를 그려 나갈 때 시작점과 다음 선의 방향만 알면 끝까지 그려나갈 수 있다. 방향만 90도씩 잘 돌려서 저장해두면 된다.
좌표위에 선 그리고 네모 그리고 회전시키고 이런 문제는 어렵다고만 생각해서
더 간단한 방법으로 나아가지 않고 그냥 바로 풀어서 제출했던 것 같다.
문제를 더 많이 풀어봐야겠다. 그래도 문제를 풀다보면 다음 문제는 덜 어렵게 느껴지는 것도 같다.