전체 글
-
[C++] 프로그래머스 [2020카카오공채] 문자열 압축코딩테스트/코딩테스트 연습 2020. 10. 27. 18:09
#include #include using namespace std; int str_zip(string s, int n) { string new_s; string tmp = s.substr(0, n); int count = 0, i; for (i = n; i 0) new_s.append(to_string(count+1) + tmp); else new_s.append(tmp); tmp = s.substr(i, n); count = 0; } } if (count > 0) new_s.append(to_string(count + 1) + tmp); ..
-
[C++] 삼성 4008. [모의 SW 역량테스트] 숫자 만들기코딩테스트/코딩테스트 연습 2020. 10. 27. 18:08
#include #include using namespace std; int card[12]; int input[11]; int max_num = -100000000; int min_num = 100000000; int N; void solution(int size, int add, int sub, int mul, int div) { if (size == N-1) { int sum = 0; sum = card[0]; for (int n = 0; n < N-1; n++) { if (input[n] == 1) sum = sum + card[n + 1]; else if (input[n] == 2) sum = sum - card[n + 1]; else if (input[n] == 3) sum = sum * ca..
-
[C++] 삼성 1247. [S/W 문제해결 응용] 3일차 - 최적 경로코딩테스트/코딩테스트 연습 2020. 10. 27. 18:08
#include #include #include using namespace std; vector save; bool check[12] = { false, }; int min_dist; int cal_dist(pair a, pair b) { return abs(a.first - b.first) + abs(a.second - b.second); } void solution(int start_index, int dist, int size) { if (size == save.size() - 2) { dist += cal_dist(save[start_index], save[1]); if (min_dist > dist) min_dist = dist; return; } for (int i = 2; i < save...
-
[C++] 삼성 1244. [S/W 문제해결 응용] 2일차 - 최대 상금코딩테스트/코딩테스트 연습 2020. 10. 27. 18:07
#include #include #include #include using namespace std; int max_number; int number_check[10] = {0, }; void swap(int& a, int& b) { int temp = a; a = b; b = temp; } void quiz(vector price, int change, int index) { if (change == 0) { int number = 0; int mul = 1; for (int i = price.size() - 1; i >= 0; i--) { number += price[i] * mul; mul *= 10; } if (max_number < number) max_number = number; return..
-
[C++] 삼성 1949. [모의 SW 역량테스트] 등산로 조성코딩테스트/코딩테스트 연습 2020. 10. 27. 18:06
#include #include using namespace std; int arr[8][8]; int visit[8][8]; int dir[][2] = { {1,0},{0,1},{-1,0},{0,-1} }; int max_dist = 0; int N; int K; void solution(int x, int y, bool k, int dist) { if (x = N || y >= N) return; for (int i = 0; i = N || next_y >= N) continu..
-
[C++] 백준 15685번 드래곤커브코딩테스트/코딩테스트 연습 2020. 10. 27. 18:06
#include #include using namespace std; int coord[101][101]; int dir[][2] = { {1,0}, {0,-1}, {-1,0}, {0, 1} }; int turn_clock(int d) { return (d + 1) % 4; } void dragon_curve(vector dragon_dir, int x, int y, int d, int g, int g_temp) { if (g < g_temp) return; if (g_temp == 0) { coord[x][y] = 1; dragon_dir.push_back(d); coord[x + dir[d][0]][y + dir[d][1]] = 1; dragon_curve(dragon_dir, x + dir[d][0..
-
[C++] 백준 14503번. 로봇 청소기코딩테스트/코딩테스트 연습 2020. 10. 27. 18:05
#include using namespace std; int area[50][50]; int dir[4][2] = { {-1, 0}, {0, 1}, {1, 0}, {0, -1} }; int Cnt = 1; int turn_left(int d){ return (4 + d - 1) % 4; } int turn_back(int d) { return (4 + d - 2) % 4; } void solution(int r, int c, int d, int check) { area[r][c] = 2; int left_d = turn_left(d); int back_d = turn_back(d); if (area[r + dir[left_d][0]][c + dir[left_d][1]] == 0) { Cnt++; solu..