본문 바로가기

알고리즘

(7)
4843. [파이썬 S/W 문제해결 기본] 2일차 - 특별한 정렬 출처 https://swexpertacademy.com/main/learn/course/lectureProblemViewer.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com ※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. 보통의 정렬은 오름차순이나 내림차순으로 이루어지지만, 이번에는 특별한 정렬을 하려고 한다. N개의 정수가 주어지면 가장 큰 수, 가장 작은 수, 2번째 큰 수, 2번째 작은 수 식으로 큰 수와 작은 수를 번갈아 정렬하는 방법이다. 예를 들어 1부터 10까지 10개의 숫자가 주어지면 다음과 같이 정렬한다. 10 1 9 2 8 3 7 4 6 5 주어진 숫자에 대해 특별..
4008. [모의 SW 역량테스트] 숫자 만들기 출처 : https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWIeRZV6kBUDFAVH SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com ※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. 선표는 게임을 통해 사칙 연산을 공부하고 있다. N개의 숫자가 적혀 있는 게임 판이 있고, +, -, x, / 의 연산자 카드를 숫자 사이에 끼워 넣어 다양한 결과 값을 구해보기로 했다. 수식을 계산할 때 연산자의 우선 순위는 고려하지 않고 왼쪽에서 오른쪽으로 차례대로 계산한다. 예를 들어 1, 2, 3 이 적힌 게임 ..
1258. [S/W 문제해결 응용] 7일차 - 행렬찾기 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV18LoAqItcCFAZN&categoryId=AV18LoAqItcCFAZN&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com ※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. 유엔 화학 무기 조사단이 대량 살상 화학 무기를 만들기 위해 화학 물질들이 저장된 창고를 조사하게 되었다. 창고에는 화학 물질 용기 n2개가 n x n으로 배열되어 있었다. 유엔 조사단은 각 용기를 조사하여 2차원 배열에 그 정보를 저장하였다. 빈..
6485. 삼성시의 버스 노선 출처 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWczm7QaACgDFAWn&categoryId=AWczm7QaACgDFAWn&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 삼성시에 있는 5,000개의 버스 정류장은 관리의 편의를 위해 1에서 5,000까지 번호가 붙어 있다. 그리고 버스 노선은 N개가 있는데, i번째 버스 노선은 번호가 Ai이상이고, Bi이하인 모든 정류장만을 다니는 버스 노선이다. P개의 버스 정류장에 대해 각 정류장에 몇 개의 버스 노선이 다니는지 구하는 프로그..
코드업 1505. 2차원 배열 채우기 3(달팽이 배열) 출처 https://codeup.kr/problem.php?id=1505 2차원 배열 채우기 3(달팽이 배열) n이 입력되면 크기가 n인 다음과 같은 2차원 배열을 출력하시오. 입력 예) 3 출력 예) 1 2 3 8 9 4 7 6 5 codeup.kr n이 입력되면 크기가 n인 다음과 같은 2차원 배열을 출력하시오. 입력 예) 3 출력 예) 1 2 3 8 9 4 7 6 5 입력 2차원 배열의 크기 n이 입력된다.(n 코드 구현을 못함 -> 절망.. 절망. (끙끙댐의 연속) 일단 내가 찾은 규칙 1. 행증가, 열증가, 행감소, 열감소 4개의 순서로 배열의 값이 완성이 된다는 것 2. 행이 채워지면 반복문 도는 횟수가 1씩 줄어든다는 것 처음에 1, 2, 3 의 숫자가 채워지면(행증가) , 반복문 횟수-1 ..
코드업 1509. (2차원배열) 진격 후 결과 문제 출처 https://codeup.kr/problem.php?id=1509 진격 후 결과 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 2 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -4 2 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 1 codeup.kr 문제 설명 10*10 크기의 보드판이 있다. 각 말들은 제일 아래쪽에서 위쪽 방향으로 진격한다. 장애물은 0이 아닌 숫자로 나타내며, 0보다 크면 블럭 장애물, 0보다 작으면 구덩이 장애물, 0이면 평지이..
코드업 1916. (재귀함수) 피보나치 수열 (Large) 문제출처 https://codeup.kr/problem.php?id=1916 (재귀함수) 피보나치 수열 (Large) $N$번째 피보나치 수를 출력하되, $10,009$를 나눈 나머지 값을 출력한다. codeup.kr 피보나치 수열이란 앞의 두 수를 더하여 나오는 수열이다. 첫 번째 수와 두 번째 수는 모두 11이고, 세 번째 수부터는 이전의 두 수를 더하여 나타낸다. 피보나치 수열을 나열해 보면 다음과 같다. 1,1,2,3,5,8,13…1,1,2,3,5,8,13… 자연수 N을 입력받아 NN번째 피보나치 수를 출력하는 프로그램을 작성하시오. 단, N이 커질 수 있으므로 출력값에 10,009를 나눈 나머지를 출력한다. ※ 이 문제는 반드시 재귀함수를 이용하여 작성 해야한다. 입력 자연수 N이 입력된다. (..