알고리즘 공부💥/JUNGOL 49

[jungol] Beginner_Coder / 도형만들기2 / 1523 / 별삼각형2 / python

1719 : 별삼각형2 제한시간1000 ms 메모리제한64 MB 해결횟수889 회 시도횟수2761 회 문제 삼각형의 높이 n과 종류 m을 입력 받은 후 다음과 같은 삼각형 형태로 출력하는 프로그램을 작성하시오. 다음은 n이 5인 경우의 예시이다. 입력형식 삼각형의 크기 n(n의 범위는 100 이하의 홀수)과 종류 m(m은 1부터 4사이의 정수)을 입력받는다. 출력형식 위에서 언급된 4가지 종류를 입력에서 들어온 높이 n과 종류 m에 맞춰서 출력한다. 입력된 데이터가 주어진 범위를 벗어나면 "INPUT ERROR!"을 출력한다. '*'과 '*' 사이에는 공백이 없다. http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=992&sca=2020 JUNGOL..

[jungol] Beginner_Coder / 도형만들기2 / 1523 / 별삼각형1 / python

1523 : 별삼각형1 제한시간1000 ms 메모리제한64 MB 해결횟수927 회 시도횟수2655 회 문제 삼각형의 높이 n과 종류 m을 입력 받은 후 다음과 같은 삼각형 형태로 출력하는 프로그램을 작성하시오. 입력형식 삼각형의 크기 n(n의 범위는 100 이하의 자연수)과 종류 m(m은 1부터 3사이의 자연수)을 입력받는다. 출력형식 위에서 언급한 3가지 종류를 입력에서 들어온 높이 n과 종류 m에 맞춰서 출력한다. 입력된 데이터가 주어진 범위를 벗어나면 "INPUT ERROR!"을 출력한다. 입력예1) 3 2 출력예1) *** ** * 입력예2) 4 3 출력예2) * *** ***** ******* 입력예3) 200 3 출력예3) INPUT ERROR! http://www.jungol.co.kr/bb..

[jungol] Beginner_Coder / 수학1 / 1402 약수구하기 / python

1402 : 약수 구하기 제한시간1000 ms 메모리제한32 MB 해결횟수704 회 시도횟수1169 회 문제 어떤 자연수 p와 q가 있을 때, 만일 p를 q로 나누었을 때 나머지가 0이면 q는 p의 약수이다. 6을 예로 들면 6 ÷ 1 = 6 … 0 6 ÷ 2 = 3 … 0 6 ÷ 3 = 2 … 0 6 ÷ 4 = 1 … 2 6 ÷ 5 = 1 … 1 6 ÷ 6 = 1 … 0 그래서 6의 약수는 1, 2, 3, 6, 총 네 개이다. 두 개의 자연수 N과 K가 주어졌을 때, N의 약수들 중 K번째로 작은 수를 출력하는 프로그램을 작성하시오. 입력형식 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다. 출력형식 첫째 줄에 N의 약수들 중 K번째로..

[jungol] Beginner_Coder / 수학1 / 1002 최대공약수, 최대공배수 / python

1002 : 최대공약수, 최소공배수 제한시간1000 ms 메모리제한64 MB 해결횟수816 회 시도횟수1813 회 문제 n개의 정수를 입력받아서 최대공약수와 최소공배수를 구하는 프로그램을 작성하여 보자. 입력형식 첫째 줄에 N (2≤N≤10) 을 입력 받고 다음 줄에 N개의 정수를 공백으로 구분하여 입력 받는다. 입력 받는 정수는 2이상 10,000 이하이다. 데이터의 크기가 주어진 범위를 벗어나는 입력은 없다. 출력형식 입력받은 정수들의 최대공약수와 최소공배수를 공백으로 구분하여 출력한다. 최소공배수는 20억 이하의 정수이다. 입력 3 2 8 10 출력 2 40 http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=281&sca=2030 JUNGOL ..

[jungol] Beginner_Coder / 수학1 / 2809 약수 / python

2809 : 약수 제한시간1000 ms 메모리제한32 MB 해결횟수619 회 시도횟수1797 회 문제 한 개의 정수를 입력받아 입력받은 정수의 약수를 모두 출력하는 프로그램을 작성하시오. 입력형식 정수 N이 주어진다. (2 ≤ N ≤ 21억) 출력형식 N의 약수를 작은 수부터 차례로 모두 출력한다. 입력 24 출력 1 2 3 4 6 8 12 24 http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=450&sca=2030 JUNGOL www.jungol.co.kr 👀코드구현

[jungol] Beginner_Coder / 도형만들기1 / 1291 구구단 / python

1291 : 구구단 제한시간1000 ms 메모리제한64 MB 해결횟수1168 회 시도횟수5921 회 문제 원하는 구구단의 범위를 입력받아 해당 구간의 구구단을 출력하는 프로그램을 작성하시오. (1) 구간의 처음과 끝을 입력받는다. (2) 입력된 구간은 반드시 처음 입력 값이 끝의 입력 값보다 작아야 하는 것은 아니다. 즉 입력된 구간의 범위는 증가하거나 감소하는 순서 그대로 출력되어야 한다.​ 입력형식 구구단의 시작 범위 s,와 끝 범위 e를 입력받는다.(s와 e는 2부터 9사이의 정수) 하나의 결과가 출력되면 프로그램을 종료한다. 출력형식 시작 범위와 끝 범위사이의 구구단을 출력하되 모든 값과 부호 사이는 공백으로 구분하여 아래 출력 예와 같이 줄을 맞추어 출력해야 한다. 구구단 사이는 3개의 공백으로..

[이것이코딩테스트다] Greedy / 1이 될 때 까지 / python

어떠한 수 N이 1이 될 때까지 다음의 두 과정 중 하나를 반복적으로 선택하여 수행하려고 한다. 단, 두 번째 연산은 N이 K로 나누어떨어질 때만 선택할 수 있다. N에서 1을 뺀다. N을 K로 나눈다. 예를 들어 N이 17, K가 4라고 가정하자. 이때 1번의 과정을 한 번 수행하면 N은 16이 된다. 이후에 2번의 과정을 두 번 수행하면 N은 1이 된다. 결과적으로 이 경우 전체 과정을 실행한 횟수는 3이 된다. 이는 N을 1로 만드는 최소 횟수이다. N과 K가 주어질 때 N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야 하는 최소 횟수를 구하는 프로그램을 작성하시오. 💥 나눌 수 있을 땐 무조건 나누자!(Greedy~~) 👀코드구현

[이것이코딩테스트다] Greedy / 숫자 카드 게임 / python

숫자 카드 게임은 여러 개의 숫자 카드 중에서 가장 높은 숫자가 쓰인 카드 한 장을 뽑는 게임이다. 단, 게임의 룰을 지키며 카드를 뽑아야 하고, 룰은 다음과 같다. 1. 숫자가 쓰인 카드들이 N X M 형태, 이때, N은 행의 개수, M은 열의 개수를 의미한다. 2. 먼저 뽑고자하는 카드가 포함되어 있는 행을 선택한다, 3. 그 다음 선택된 행에 포함된 카드들 중 가장 숫자가 낮은 카드를 뽑아야 한다. 4. 따라서 처음에 카드를 골라낼 행을 선택할 때, 이후에 해당 행에서 가장 숫자가 낮은 카드를 뽑을 것을 고려하여 최종적으로 가장 높은 숫자의 카드를 뽑을 수 있도록 전략을 세워야 한다. ​ 입력 조건 - 첫째 줄에 숫자 카드들이 놓인 행의 개수 N과 열의 개수 M 이 공백을 기준으로 하여 각각 자연수..

[이것이코딩테스트다] Greedy / 큰수의 법칙 / python

큰수의 법칙 기출: 2019 국가 교육기관 코딩 테스트 ​ 큰 수의 법칙은 다양한 수로 이루어진 배열이 있을 떄 주어진 수들을 M번 더하여 가장 큰 수를 만드는 법칙이다. 단, 배열의 특정한 인덱스(번호)에 해당하는 수가 연속해서 K번을 초과하여 더해질 수 없는 것이 이 법칙의 특징이다. ​ Q. 순서대로 2, 4, 5, 4 ,6으로 이루어진 배열이 있을 떄 M이 8이고, K가 3이라고 가정하자. 이 경우 특정한 인덱스의 수가 연속해서 3번 더해질 수 있으므로 큰 수의 법칙에 따른 결과 6 + 6 + 6 + 5 + 6+ 6+ 6+ 5 = 46이됨. ​ ​ 입력 예시 5 8 3 2 4 5 4 6 ​ 출력 예시 46 ​ 입력 조건 1. 첫째 줄에 N(2