title: "행렬 테두리 회전하기" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-06-12" 문제 링크 행렬 테두리 회전하기 C++ #include #include #include using namespace std; int rotate(vector& board, int sr, int sc, int er, int ec){ vector nums; nums.push_back(board[sr][sc]); int cursor = 0; // 우 방향 이동 for(int x=sc+1; x=sr; y--){ int num = board[y][sc]; nums.push_back(num); board[y][sc] = nums[cursor+..
title: "2개 이하로 다른 비트" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-06-11" 문제 링크 2개 이하로 다른 비트 C++ #include #include using namespace std; vector solution(vector numbers) { vector answer; for(long long x: numbers){ // 짝수 or 홀수 if(x%2==0) { answer.push_back(x+1); } else{ long long lastZero = (x+1)&(-x); // 마지막 0 bit 자리 x |= lastZero; // 마지막 0을 1로 x &= ~(lastZero>>1); // 그 다음..
title: "괄호 회전하기" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-04-17" 문제 링크 괄호 회전하기 C++ #include #include using namespace std; int solution(string s) { int answer = 0; for(int i=0; i { if (stack.length === 0) stack.push(v); else if (v === ")" && stack[stack.length - 1] === "(") stack.pop(); else if (v === "}" && stack[stack.length - 1] === "{") stack.pop(); else if (v ===..
title: "게임 맵 최단거리" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-04-03" 문제 링크 게임 맵 최단거리 C++ #include #include #include using namespace std; bool isValid(vector& maps, int row, int col){ int n = maps.size(); int m = maps[0].size(); if(row = n) return false; if(col = m) return false; if(maps[row][col] == 0) return false; return true; } bool isLowestC..
title: "n진수 게임" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-03" 문제 링크 n진수 게임 C++ #include #include #include using namespace std; string num2str(int n, int num){ if(num==0) return "0"; string LUT="0123456789ABCDEF"; string ret=""; while(num>0){ ret += LUT[num%n]; num/=n; } reverse(ret.begin(), ret.end()); return ret; } string solution(int n, int t, int m, int p) { str..
title: "파일명 정렬" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-03" 문제 링크 파일명 정렬 C++ #include #include #include #include using namespace std; bool cmp(vector a, vector b){ transform(a[0].begin(), a[0].end(), a[0].begin(), ::tolower); transform(b[0].begin(), b[0].end(), b[0].begin(), ::tolower); if(a[0]==b[0]) return stoi(a[1])
title: "압축" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-03" 문제 링크 압축 C++ #include #include #include using namespace std; vector solution(string msg) { vector answer; // init map dict; int index=0; // 색인 번호 while(index
title: "방금그곡" category: 프로그래머스[Level-2] tags: [C++, JavaScript, 프로그래머스] date: "2021-02-03" 문제 링크 방금그곡 C++ #include #include #include using namespace std; string code2lower(string str){ string s=""; for(int i=0; i c m=code2lower(m); int maxTime=0; for(string music: musicinfos){ // split stringstream ss(music); string str, start, end, title, code; int k=0; while(getline(ss, str, ',')){ if(..