문제를 읽고 이해한다 문제를 익숙한 용어로 재정의한다 어떻게 해결할지 계획을 세운다. 계획을 검증한다. 프로그램으로 구현한다 어떻게 풀었는지 돌아보고, 개선할 방법이 있는지 찾아본다. 1. 문제를 읽고 이해한다. 문제를 읽고 이해하는 것은 생각보다 많이 중요하다. 시간에 쫒겨 문제를 보다보면 분명 잘못이해한부분이나 사소한 제약조건을 잘못 이해 할 수 있따. 따라서 문제 설명을 공격적으로 읽으며 문제가 원하는 바를 완전히 이해하는 과정이 반드시 필요합니다. 2. 재정의와 추상화 자신이 다루기 쉬운 개념을 이용해서 문제를 자신의 언어로 풀어 쓰는것입니다. 문제가 요구하는 바를 직관적으로 이해하기 위해 꼭 필요하며 복잡한 문제일 수록 재정의와 추상화가 중요합니다. 문제의 본질을 어떻게 재구성한냐에 따라 같은 ..
이번에 윈도우 터미널이 1.0으로 업데이트 되면서 좋아졌다 하길레 사용해보려 합니다. 사실 윈도우 터미널의 존재를 모르고 살고 필요성을 많이 못느꼈습니다.. 기본 IDE에 power shell 이 붙어서 나오기 때문에 거기서 프로젝트를 빌드하고 사용했기 때문입니다.. https://devblogs.microsoft.com/commandline/windows-terminal-1-0/ Windows Terminal 1.0 | Windows Command Line Last year at Build 2019, we first announced the Windows Terminal. Since then, we have been working with the community to create a wonderful..
알고리즘 풀이에 있어서 전체 n개의 원소중에서 r개 의 원소를 선택해 직접 해봐야 하는 문제들이 많다. 이럴떄 기계적으로 그 코드를 생각 해내면 많은 시간 단축이 있을 것 같아. 코드를 적어 두려한다.. void combination(int start, int count, vector picked) { // k select if (count == k) { //somthing } for (int i = start; i < chickens.size(); ++i) { picked.push_back(chickens[i]); combination(i+1,count+1, picked); picked.pop_back(); } } void Solve() { vector temp; combination(0,0, temp..