알고리즘(C++) / 프로그래머스 level 2 : 가장 큰 정사각형 찾기
level 2 : 가장 큰 정사각형 찾기 https://programmers.co.kr/learn/courses/30/lessons/12905 코딩테스트 연습 - 가장 큰 정사각형 찾기 [[0,1,1,1],[1,1,1,1],[1,1,1,1],[0,0,1,0]] 9 programmers.co.kr 코드 //프로그래머스 가장 큰 정사각형 찾기 #include #include #include using namespace std; int solution(vector board) { int answer = board[0][0]; for (int i = 1; i < board.size(); i++) { for (int j = 1; j < board[0].size(); j++) { if (board[i][j] == ..
2021. 7. 11.
알고리즘(C++) / 프로그래머스 level 2 : 압축
level 2 : 압축 https://programmers.co.kr/learn/courses/30/lessons/17684?language=cpp 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr 코드 //프로그래머스 압축 #include #include #include #include using namespace std; vector solution(string msg) { vector answer; vector alpa = { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J","K", "L"..
2021. 7. 11.
알고리즘(C++) / 벡터(vector) 중복제거 : unique
벡터(vector) 중복제거 unique 벡터에서 중복되는 수 제거가 필요할 때가 있다. 그럴경우에 unique를 사용하여 중복되는 수를 제거할 수 있다. 만약 벡터에 수가 { 1,1,3,3,0,1,1 }가 저장되어있다고 하면 unique 함수를 사용한 후에는 벡터에 {1, 3, 0, 1, 0, 1, 1 } 과 같이 저장되어 있다. 빨간색 부분은 벡터에 존재하는 수이고 파란색 부분은 원래 벡터에서 바뀌지 않은 부분이다. 이때 algorithm 헤더를 선언해주어야한다. vector arr = {1,1,3,3,0,1,1}; unique(arr.begin(), arr.end()); erase함수는 벡터를 원하는 위치를 지워준다. arr.erase(unique(arr.begin(), arr.end()), arr..
2021. 7. 1.
알고리즘(C++) / 프로그래머스 level 1 : 키패드 누르기
[카카오 인턴] 키패드 누르기 https://programmers.co.kr/learn/courses/30/lessons/67256?language=cpp 코딩테스트 연습 - 키패드 누르기 [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. 6. 27.