서론 아직까진 30분 안에 풀고 있으니 할만한데라고 생각하니, 이게 웬걸 상당히 오래 걸리는 문제를 2주차 막바지에 만나버렸다. 문제 이해를 못한것도 충격이었고, 중간에 발생한 문제도 문자열에 관한 기본적인 문제여서 발전이 필요하구나 라는 생각을 들게 하였다. 5일차 GameJam 문제 요약 : 맵의 각 위치에는 이동해야 되는 명령어가 있고 이를 따라 이동하되, 한번 방문한 곳을 다시 갔을경우 종료된다. 플레이어와 구름이 게임을 하며 점수는 각각 방문한 위치의 수이다. 이긴 사람의 이름과 점수를 출력하시오. 어려웠던 점 ●문제해석 문제를 읽다가 입력부분에 이해가 되지 않는 부분이 있었다. 'i번째 줄에서 j번째로 주어지는 지시 사항은 보드의 r번째 행, c번째 열의 정보를 의미한다'? 나는 command..
서론 완전 탐색 문제를 제공하는 2주차가 시작되었다. 1주차 문제는 쉬웠는데, 오늘 푼 2주차 문제는 문자열과 순열 그리고 unique를 사용하게되어 복잡해서 푸는 맛이 있었다. 5일차 문자열 나누기 문제 요약 : 문자열을 받고, 3개로 분할 하여 한 세트를 만들고, 모든 세트들을 합쳐서 정렬한 배열을 만들어서, 한 세트의 문자열이 정렬한 배열에서 몇 번째 인덱스에 해당되는지를 더해서 최대 값을 정답으로 출력하는 문제이다. 조합을 통해서 문자열을 자를 위치를 지정해 잘라서 문자열을 P와 Plist에 저장해주고 P에서 정렬제거와 중복을 제거한뒤 Plist의 3개씩 각각 점수를 계산하여 최댓 값을 출력해준다. #include #include #include #include using namespace std..
서론 매일매일 구름톤 문제를 풀어나가고 있다. 기초적인 구현 문제가 주를 이루다보니, 이를 어떻게 풀지보단 어떻게 해볼까 라는 생각을 많이 하는 것 같다. 문제를 풀고나서 꾸며지는 캐릭터를 보는 맛도 있어, 다음주는 어떤 모습이 될지 궁금하다. 5일차 이진수 정렬 문제 요약 : 이진수로 변환시 1이 많은 수로 정렬하고 N번째 수를 답하여라(1의 개수가 같을 경우 원래 숫자의 내림차순) 새로 배운 for문 사용 방법을 사용하여 쉽게 반복문을 구현해 보았다. 배열안에 Pair로 원래 숫자와 1의 갯수를 저장하고 정렬함으로써 문제를 풀었다. #include #include #include using namespace std; int main() { int N, K; cin >> N >> K; vector ar..
잊기 전에 메모해 두려고 한다. C++을 사용하고 있고 cin/cout을 사용하고자 한다면, 1. cin.tie(NULL)과 //cin과 cout 버퍼 동기화 해제 2. sync_with_stdio(false)를 둘 다 적용해 주고, //C식 입출력 해제 3. endl 대신 개행문자(\n)를 쓰자. //문자열 처리 단, 이렇게 하면 더 이상 scanf/printf/puts/getchar/putchar 등 C의 입출력 방식을 사용하면 안 된다. 단, 1을 진행할 경우 입출력의 순서가 라인과 달라질 수 있다.