2020 카카오 인턴 - 키패드 누르기
programmers.co.kr/learn/courses/30/lessons/67256 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 오늘은 곧 있을 카카오 인턴십을 대비해 문제를 풀어보았다. 먼저 제일 쉽다고 하는 문제인 첫 번째 문제. (사실 이것도 어렵게 풀었다) 문제를 보자. 문제 설명 스마트폰 전화 키패드의 각 칸에 다음과 같이 숫자들이 적혀 있습니다. 이 전화 키패드에서 왼손과 오른손의 ..
2021. 5. 5.
15683 감시 (C++)
#include using namespace std; #define X first #define Y second int board1[10][10]; // 원래 보드 작성 칸 int board2[10][10]; // 사각 지대의 개수를 세기 위한 보드 int n,m; int dx[4] = {1,0,-1,0}; int dy[4] = {0,1,0,-1}; vector cctv; bool OOP(int a,int b) { return a = n || b = m; } // (x,y)에서 dir 방향으로 진행하며 벽을 만나기 전까지 지나가는 모든 칸을 7로 바꿈 void func(int x, int y, int dir) { dir %= 4; while(1) { x += dx[di..
2021. 5. 1.
6593 상범 빌딩 (C++)
하....아.... 뭐같은 문제...라고 하기엔 내 실수가 너무나도 커서... 아무튼..이 문제는 여느 BFS문제와 똑같이 BFS로 풀면 되는 문제였다. 정육면체로 이루어진 빌딩에서 동,서,남,북,상,하 로 총 6개의 방향으로 움직일 수 있고, 그 움직이는 횟수에 따라 1분이 소요된다. 라고 나와있다. 그 말인 즉슨, 조건에 맞는 이동을 했을 경우 시간을 1 늘려주면 된다. 만일 이동할 수 없거나 E에 도달하지 못하면 Trapped! 가 뜨게 하면 된다. 그리고 0,0,0 좌표를 입력하면 종료하는 조건으로 이 프로그램을 종료 시키면 된다. 근데 저 무수히 찍힌 틀렸습니다는 사실 로직은 맞았지만, 출력문이 이상해서 틀렸습니다가 뜬거다. 근데 난 1시간이상을 내 로직에 문제가 있나? 뭐가 문제지? 라며 온갖..
2021. 4. 28.
IT_learning's Commit