일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프메
- 스마일게이트
- 디자드
- 파이썬서버
- 스터디
- EnhancedInput
- 마인크래프트뮤지컬
- 언리얼프로그래머
- Ajax
- Enhanced Input System
- Unseen
- R
- 언리얼
- Jinja2
- flask
- 으
- 알고풀자
- VUE
- 카렌
- node
- 언리얼뮤지컬
- 미니프로젝트
- 게임개발
- Bootstrap4
- JWT
- 레베카
- 프린세스메이커
- Express
- 정글사관학교
- 데이터베이스
- Today
- Total
목록컴퓨터 공학, 전산학/알고리즘 (13)
Showing
const string result = Add(str1, str2); 에 대한 Add 함수를 아래와 같이 작성해보았다. (1) 입력값이 str1과 str2를 뒤집어준다. (2) 두 입력값 중에서 더 큰 사이즈를 for문의 범위로 설정한다. (3) 자리수마다 덧셈하고 덧셈의 값이 10을 넘으면 1을 다음 자리로 넘긴다. 10으로 나눈 나머지는 계속 answer에 축적 (4) (3)을 반복하면서 모든 자리수를 다 연산하면 answer을 뒤집는다. (5) 연산 결과 algorithm 라이브러리의 reverse를 이용해서 문자열을 뒤집었다. 파이썬에 길들여져서 int로 string을 변환하니 아스키코드값이 나와 -48을 적용하였다. #include #include #include #include using na..
https://www.acmicpc.net/problem/2846 2846번: 오르막길 상근이는 자전거를 타고 등교한다. 자전거 길은 오르막길, 내리막길, 평지로 이루어져 있다. 상근이는 개강 첫 날 자전거를 타고 가면서 일정 거리마다 높이를 측정했다. 상근이는 가장 큰 오르 www.acmicpc.net 2달 전쯤에 파이썬으로 풀어봤던 코테 문제들을 전부 C++로 풀어보려고 시도 중이고, 오르막길 문제도 그 중 하나이다. 파이썬과 c++의 가장 큰 차이점은 1차적으로 입력 데이터 관리이다. 파이썬은 입력 값들을 바로 길이가 정해진 동적 배열로 하나로 묶어 만들 수 있는 반면 c++은 입력 최대 범위를 정적배열의 크기로 잡아놓고 코드를 전개해야 한다. 💡 파이썬(소요시간 8분~10분)으로는 상태 관리 변수..
기본 순열 코드 jam = ['A','B','C'] pos = ['','',''] check = [0,0,0] def perm(depth): if depth == 3: print(*pos) return for i in range(3): # 0 1 2 if not check[i]: check[i] = 1 pos[depth] = jam[i] # jam[i] = A B C perm(depth+1) check[i] = 0 perm(0) 최종 출력: A B C A C B B A C B C A C A B C B A SWEA 최소 생산 비용 https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDYSqAAbw5UW6&subjectId=..
https://www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net 처음에 짠 코드 divide라는 함수에 인자 4개를 받게하여 행의 처음과 끝, 열의 처음과 끝을 컨트롤하면 된다는 아이디어까지는 접근했다. import sys sys.setrecursionlimit(10**6) # 8 # 1 1 0 0 0 0 1 1 # 1 1 0 0 0 0 1 1 # 0 0 0 0 1 1 0 0 # 0 0 0 0 1 1 0 0 # 1 0 0 0 1 1 ..
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Psz16AYEDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 스도크룰을 몰라 파리퇴치처럼 3*3 정사각형이 모든 col과 row를 도는 줄 알았는데, 반드시 3칸씩 뛰면서 돌아야 했던 문제 전체 코드 # 10 # 7 3 6 4 2 9 5 8 1 # 5 8 9 1 6 7 3 2 4 # 2 1 4 5 8 3 6 9 7 # 8 4 7 9 3 6 1 5 2 # 1 5 3 8 4 2 9 7 6 # 9 6 2 7 5 1 8 4 3 # 4 2 1 3 9 8 7 6 5 #..
https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVIc7KqfQDFAWg# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com dy = [-1, 1, 0, 0] dx = [0, 0, -1, 1] T = int(input()) for t in range(T): n = int(input()) arr = [list(map(int, input())) for _ in range(n)] start_y, start_x = 0, 0 for i in range(n): for j in range(n)..
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PzOCKAigDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com N과 M, 그리고 N*N 안을 채우는 값들이 제시되고, N*N 판 위에서 M*M 모양 안에 들어오는 판 요소들의 합 중에서 최댓값을 구하는 문제이다. 처음에는 아래와 같이 코드를 3중 포문으로 작성하였다. T = int(input()) for t in range(1, T+1): n,m = map(int, input().split()) arr = [list(map(int, input().split()..
DFS 코드 # N*N크기의 배열이 주어졌을때 1의 개수는 몇개인지 세어보기 dfs를 이용해서 # 하나의 시작 1로 부터 붙어져 있는 연속된 1의 개수 세어보기 => 2, 13이 답이 됨. # 7 # 0000011 # 0000000 # 0011100 # 0010111 # 0110010 # 0011100 # 0000000 cnt = 0 # 상하좌우 dx = [0,0,-1,1] # 열 dy = [-1,1,0,0] # 행 def dfs(_y, _x): global arr, cnt arr[_y][_x] = 0 c_y = _y c_x = _x for k in range(4): n_y = c_y +dy[k] n_x = c_x + dx[k] if 0 n_x and arr[n_y][n_x] == 1: arr[c_y][..
https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVGOEKqeoDFAWg# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 💡 아이디어 세로 회문을 얻기 위해 행과 열을 바꿔주면 된다 소요 시간: 2시간 어려웠던 점: 파이썬 자체에 대한 이해도가 부족한 탓에 시간이 많이 소요됨. 슬라이싱으로 새로운 객체가 만들어지는 줄 알았으나, 2차원 배열에 대해서 deepcopy를 이용해야 함. 또한 요구한 입력값이 제대로 먹질 않아서 chat gpt에 물어보니 arr = list(input..
https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVFCzaqeUDFAWg# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 소요시간 : 30분 이상 어려웠던 점: 오답 테스트케이스 2개를 잡을 수 없어서 포기하려다가 기존에 배터리가 있는 정류장에서 다음 배터리 정류장까지 남은 step이 충분하면 바로 continue 했는데 다시 살펴보니 현재 step 소비하는 로직을 적용하지 않았던 것이 문제였으므로 rest_step -= 1 를 추가해서 통과 아쉬운 점: 케이스 별로 하드코딩을..