[프로그래머스 124 나라의 숫자] 프로그래머스 LEVEL 2 문제를 다 풀려고 한다. LEVEL2와 백준을 비교해봤을 때 대략 백준 실버~골드하위 정도 되는것 같다. 이번 문제는 숫자를 입력받아 그 숫자를 124 나라의 규칙에 맞게 변환해야 한다. 숫자가 규칙적이 아니라 단순히 mod연산으로는 구할 수 없지만 문제를 잘 읽어보면 규칙이 보인다. n[4]는 n[1]에 1을 붙인꼴, n[5]는 n[1]에 2를 붙인 꼴, n[6]은 n[1]에 3을 붙인 꼴이다. n[7]부터는 n[2]에 1을 붙인꼴 ... 이런식으로 흘러간다. 따라서 입력을 받은 후에 자신의 앞에 붙일 수들이 무엇인지 재귀를통해 찾도록 구현했다. 예를들어 13을 입력받으면 n[13]은 n[4]에 1을 붙인꼴이고, n[4]는 n[1]에 1을 ..
[BOJ 1992(S1) 리뷰] 전에 풀었던 별찍기 문제와 비슷해서 금방 풀었다. SIZE와 X,Y좌표를 받아서 범위에대해 같은값인지 확인하고 같은값이 아니라면 크기를 줄여가며 재귀함수에 넣어주면 된다. 첨에 재귀함수를 실행하는 순서를 잘못넣어서 좀 틀렸지만 순서를 바로잡아주니 바로 정답처리 되었다. #include #include #include #include #include using namespace std; char table[100][100]; int n; int check(int size,int x, int y) { char ret = table[x][y]; for (int i = x; i < x + size; i++) { for (int j = y; j < y + size; j++) { i..
[BOJ 1780(S2) 리뷰] SIZE와 x,y좌표를 이용해 풀었다. 같은 값이 아닐경우 크기를 계속 줄어나가며 재귀함수를 호출했다. #include #include #include #include #include using namespace std; int table[2300][2300]; int n; int a=0, b=0, c=0; int check(int size,int x, int y) { int Cur = table[x][y]; for (int i = x; i < x+size; i++) { for (int j = y; j < y+size; j++) { if (table[i][j] != Cur) //같은모양이 아님 return -100; } } return Cur; //같은모양임 } void ..
[BOJ 2447(S1) 리뷰] 반복되는 패턴이 크기가 계속 커지는 경우이므로 재귀를 이용해 해결했다. #include #include #include #include using namespace std; char table[2200][2200]; int n; void printStar(int x, int y) { for (int i = y; i < y + 3; i++) table[x][i] = '*'; table[x + 1][y] = '*'; table[x + 1][y+1] = ' '; table[x + 1][y + 2] = '*'; for (int i = y; i < y + 3; i++) table[x+2][i] = '*'; } void func(int n, int x, int y) { if (n <..
[BOJ 1629(S1) 리뷰] 쉬워보이지만 정답률이 낮은것엔 이유가 있다. 최대값이 21억이므로 21억을 곱하는 연산을 한다면 당연히 오버플로우가 생긴다. 이 문제는 재귀를 통해 해결해야한다. x^16은 x^8 * x^2과 같음을 이용해야 한다. #include #include using namespace std; long long int f(int A, int B, int C) { if (B == 1) return A % C; long long int val = f(A, B / 2, C); val = val * val%C; if (B % 2 == 0) return val; return val * A%C; } int main(void) { cin.tie(0); ios::sync_with_stdio(0)..
- Total
- Today
- Yesterday
- 컴퓨터 구조
- nestjs
- 동적계획법
- 벨만포드
- 그리디
- 예외처리
- 재귀
- 컴퓨터 통신
- BFS
- Computer Architecture
- boj
- 스레드
- 투포인터
- 백준
- 시뮬레이션
- 백트래킹
- 자바
- ReactNative
- 자바스크립트
- 세그먼트 트리
- nest.js
- dfs
- 알고리즘
- 그래프
- 구현
- typeORM
- nodeJS
- 중앙대학교
- java
- node.js
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |