일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 9095
- 괄호
- 6603
- lcm
- 11057
- expo
- 코테
- 11054
- permutation
- 코틀린
- 11기
- 11053
- 백준
- Kotlin
- 1182
- 최소공배수
- LCS
- 순열
- 나머지
- 뒤로가기
- 홈화면
- 파이썬
- 안드로이드
- itertools
- Android
- 1260
- Combination
- Python
- 매일11시
- 앱
- Today
- Total
목록분류 전체보기 (181)
황소개발자
#include int main() { int t; scanf("%d", &t); int arr[11] = {}; arr[0] = 1; arr[1] = arr[1 - 1]; arr[2] = arr[2 - 2] + arr[2 - 1]; arr[3] = arr[3 - 3] + arr[3 - 2] + arr[3 - 1]; for (int i = 4; i < 11; i++) { arr[i] = arr[i - 3] + arr[i - 2] + arr[i - 1]; } for (int i = 0; i < t; i++){ int n; scanf("%d", &n); printf("%d\n", arr[n]); } } 끝에 3을 붙여서 되거나 2를 붙여서 되거나 1을 붙여서 되거나
파이썬 32비트 환경으로 실행해주셔야 합니다.. 파이썬 64비트 환경에서 저런 에러가 납니다. 1. 아나콘다 32비트로 재설치 2. 아나콘다 32비트 가상환경 구축 # set CONDA_FORCE_32BIT=1 # conda create -n py36_32 python=3.6 anaconda 그리고 파이참에서 가상환경 연결. 질문 댓글남겨주세용
vscode에서 컨트롤 + 쉬프트 + p 로 shell 검색 그리고 ~~ default shell 클릭 거기서 Command Prompt 클릭 그러면 커맨트창이 밑에 뜹니다 (혹시 이미 powershell 창이 떠있었다면) 1:powershell 옆에 + 클릭해주세요
수능 보는 느낌이었다.. 한 문제도 못풀면 어쩌지하는 불안감에 잠도 제대로 못잤다.. 그런속에서 시험이 시작되었고 다행히 1번은 많이 본 dp문제였다. 8분만에 풀고 db 문제로 넘어가서 7분만에 풀고 2번은 문제가 살짝 길어서 3번부터 후딱 읽고 이것도 내가 풀어본 문제중에 비슷한 알고리즘이 있어서, 15분만에 풀었다. 그리고 2번이 좀 복잡했다. 그룹핑 개념 + 구현 이 정도였는데 예전에 어렴풋이 구현했던 적이 있었는데, 다행히 생각대로 구현은 잘되었다. 그렇게 40분만에 풀고 50분을 남긴채 그리고 웹문제는 통신을 못받아 왔다.. 물론 잘 모른다.. 공부는 했는데.. 뭔가 조금만 알면 될 것 같은데,, 그 직전인 것 같다,, 아쉽다 ㅠ 확실히 알고리즘 유형별로 다 푸니 유형이 다 보이는 것 같다 그..
10분컷 import sys input = sys.stdin.readline n = int(input()) mat = [] for i in range(n): mat.append(list(map(int, input().split()))) dx = [0, 0, 1, -1] dy = [1, -1, 0, 0] def bfs(sy, sx, visited, cnt, wh): visited[sy][sx] = 1 q = [] q.append([sy, sx]) while q: y, x = q.pop(0) for i in range(4): ny = y + dy[i] nx = x + dx[i] if 0 wh: bfs(i, j, visited, cnt, wh) cnt += 1 if cnt - 1 == 0: break ans ..
므ㅏㅈ;.. 시간초과 날 줄 알았는디 import sys input = sys.stdin.readline t = int(input()) for _ in range(t): n = int(input()) door = [0] * (n + 1) for i in range(1, n + 1): for j in range(i, n + 1, i): door[j] += 1 ans = 0 for i in range(1, n + 1): if door[i] % 2 == 1: ans += 1 print(ans)
dp 는 썻던걸 또 써먹어야됩니다. 그걸 어떻게 써먹을지 고민해야됩니다. dp 각 칸에 거기서 시작했을 때의 최대값을 구하고, 좌우를 살피는데 더 큰 곳만 살피는데, 거기에 값이 있다면 본인 좌표에는 그 값 + 1 을 넣으면되는 거죠 근데 네 방향이니까 네 방향중에 max 값을 넣어야겠죠 import sys input = sys.stdin.readline sys.setrecursionlimit(10**6) n = int(input()) mat = [] for i in range(n): mat.append(list(map(int, input().split()))) dp = [[-1 for _ in range(n)] for _ in range(n)] dy = [0, 0, 1, -1] dx = [1, -1, ..
이슬처럼 ~~~ 동해 바다로~ cover by 자우림 is good dp[n][0] : n 줄에 사자를 하나도 배치하지 않고 만들 수 있는 최대 수 dp[n][1] : n 줄에 1열에 사자 하나 놓고 배치할 수 있는 최대 수 dp[n][2] : n 줄에 2열에 사자 하나 놓고 배치할 수 있는 최대 수 n = int(input()) dp = [[0, 0, 0] for _ in range(n + 1)] dp[1][0] = 1 dp[1][1] = 1 dp[1][2] = 1 for i in range(2, n + 1): dp[i][0] = (dp[i - 1][0] + dp[i - 1][1] + dp[i - 1][2]) % 9901 dp[i][1] = (dp[i - 1][0] + dp[i - 1][2]) % 99..