
숫자를 차례대로 출력합니다. 3 6 9 게임의 규칙에 따라 박수는 '-'로 대체해서 출력합니다. #include #include using namespace std; int main(int argc, char** argv) { int n; int count; string s; cin >> n; for(int i=1; i

스도쿠에 문제가 있는지 확인하는 문제입니다. 가로 9줄, 세로 9줄, 사각형 9개를 확인해주었습니다. 확인하는 과정에서 비트와 비트연산을 사용했습니다. import java.util.Scanner; import java.io.FileInputStream; class Solution { public static void main(String args[]) throws Exception { int T; int width = 0; //511 int[] length = new int[9]; // 511 int[] square = new int[3]; // 511 String S; boolean chk = false; Scanner sc = new Scanner(System.in); T=sc.nextInt(); ..

문자의 길이가 n일때 2번째 비트를 1로 변경하면 2~n번이 전부 1로 변경됩니다. 마찬가지로 0으로 변경하면 0으로 전부 변경됩니다. 이를 통해 0인 값을 몇번반에 입력된 값으로 변경할 수 있는지 찾는 문제입니다. 왼쪽부터 처음 1이 나오는 위치를 찾고 그 후로 이전 값이랑 값이 다를때마다 카운트를 해주어서 출력해주었습니다. import java.util.Scanner; import java.io.FileInputStream; class Solution { public static void main(String args[]) throws Exception { Scanner sc = new Scanner(System.in); int T; int result = 0; char c; String s; T=s..

2019 카카오 개발자 겨울 인턴십 인형뽑기 게임을 실행했을 때 총 몇개의 캐릭터가 없어지는지 구하는 문제입니다. board배열에서 캐릭터를 뽑습니다. (해당 캐릭터는 board배열에서 지워줍니다.) 뽑힌 캐릭터를 배열에 넣고 이전 값과 비교해서 같으면 두개를 지우면서 결과값에 2를 더해줍니다. function solution(board, moves) { let answer = 0; let stack = []; let index = 1; let x, y; let height = []; for(let i=0; i

2021 카카오 채용연계형 인턴십 문자를 숫자로 변환하는 문제입니다. var num = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]; var size = [4, 3, 3, 5, 4, 4, 3, 5, 5, 4]; 숫자와 숫자의 길이에 해당하는 배열을 만들어서 단어와 매칭되는게 있는지 확인합니다. 있으면 해당 숫자를 결과값에 추가해주고 사이즈 -1만큼 이동합니다. 없다면 문자가 아닌 숫자가 있는 경우이므로 숫자를 결과값에 추가합니다. 반복작업이 완료되면 해당 결과값을 반환합니다. function solution(s) { var num = ["zero", "one", "two", "three", "four", ..

2019 카카오 개발자 겨울 인턴십 제재 아이디를 통해서 만들 수 있는 사용자 아이디의 개수를 구하는 문제입니다. 제재 아이디를 통해서 가능한 아이디를 매칭해줍니다. ex) - userId - abcde aaaaa aaaccc aacde - bannedId - **cde ***** - possibleBid - **cde = {abcde, aacde} ***** = {abcde, aaaaa, aacde} 1. 재귀를 통해서 매칭된 아이디들을 조합이 가능한 형태로 만들어줍니다. (아이디는 최대 8개이므로 비트를 사용해주었습니다 (2^8 = 256)) 2. 재귀를 통해서 비트값을 쌓아가고 같은 비트가 들어오면 가지치기를 해주었습니다. 3. 제재하는 배열의 크기만큼 비트를 쌓았으면 해당 비트를 true로 만들어..

2018 KAKAO BLIND RECRUITMENT 셔틀버스를 타는데 가장 늦게 나가서 기다리는 시간을 구하는 문제입니다. timetable을 정렬한 후 버스가 오는 시간에 맞춰서 차례대로 넣어줍니다. 마지막 버스가 왔을 때 모든 사람이 가득 찬 경우 - 마지막 사람 -1분을 출력합니다. 그 외에는 마지막 버스가 오는 시간을 출력해줍니다. #include #include #include #include #include using namespace std; int convert(int time, int num, string type) { if(type == "plus"){ if((time % 100) + num >= 60){ time += 100; time += (((time % 100) + num) % ..

2021 카카오 채용연계형 인턴십 거리두기가 지켜지고 있는지 확인하는 문제입니다. P가 있는곳에서 BFS를 통해 2칸을 확인합니다. 2칸안에 P가 존재하면 거리두기가 지켜지지 않은 경우입니다. #include #include #include #include #include using namespace std; int result; vector v; vector visit; vector falseVisit(5, vector(5, false)); queue q; vector solution(vector places) { int y, x, c; vector temp; vector answer; for(int i=0; i