목록Algorithm/Cases-BOJ (67)
자이의 프로그래밍
문제 N과 시작 숫자 S가 주어지면 숫자 피라미드를 만드는 프로그램을 작성하시오. 예를 들어, N이 5이고 S가 3 이라면, 그 숫자 피라미드는 다음과 같다. 3 456 21987 3456789 987654321 시작 숫자 S는 꼭대기부터 1씩 증가한다. 시작 행의 번호가 1번이라고 했을때, 짝수번째 행은 왼쪽에서 오른쪽으로 1씩 증가하도록 적고, 홀수번째 행은 거꾸로 적는다. 숫자가 만약 10이 될 경우, 1로 바꾸고 다시 증가한다. 입력 입력의 첫 번째 줄에 N과 시작 숫자 S가 주어진다. ( 1≤N≤100, 1 ≤S≤ 9) 출력 첫 번째 줄부터 숫자 피라미드를 출력한다. (각 줄에 존재하는 공백의 개수와 숫자의 개수를 정확하게 확인해주시바랍니다.) 예제 입력 5 3 예제 출력 3 456 21987 ..
문제 자연수n,m이 주어질 때, n부터m까지 존재하는 소수를 모두 출력하는 프로그램을 작성하여라. 여기서 소수란, 약수가 1과 자기자신밖에 존재하지 않는 수를 말한다. 입력 첫째 줄에 자연수 n, m이 주어진다. (1≤n,m≤20,000) 출력 첫째 줄에 n부터m까지 존재하는 소수를 모두 출력한다. 예제 입력 1 10 예제 출력 2 3 5 7 예제 입력 13 30 예제 출력 13 17 19 23 29 ------------------------------------------------------------------------------------------------------------------------------ n과 m의 범위가 1부터 20000까지이므로 최대한 시간을 줄이기 위해 소수를 찾..
문제 n층의 삼각형을 출력하는 프로그램을 작성하여라. Input, Output의 예제를 참고한다. 입력 첫째 줄에 정수n이 주어진다. (0≤n≤100) 출력 다음 예제와 같이 삼각형 모양으로 ‘*’을 출력한다.(공백의 개수와 별의 개수를 정확하게 확인해주시바랍니다.) 예제 입력 3 예제 출력 * *** ***** 예제 입력 6 예제 출력 * *** ***** ******* ********* *********** ------------------------------------------------------------------------------------------------------------------------------ 입력받는 수를 n, 초기 출력 갯수 a를 1이라고 한다면 n-a만큼의 ..
문제 n층의 삼각형을 출력하는 프로그램을 작성하여라. Input, Output의 예제를 참고한다. 입력 첫째 줄에 정수n이 주어진다. (0≤n≤100) 출력 다음 예제와 같이 삼각형 모양으로 ‘*’을 출력한다. (공백의 개수와 별의 개수를 정확하게 확인해주시바랍니다.) 예제 입력 3 예제 출력 * ** *** 예제 입력 6 예제 출력 * ** *** **** ***** ****** ------------------------------------------------------------------------------------------------------------------------------ 입력받는 숫자를 n이라고 하면 초반 출력 갯수 a를 1이라고 초기화할 때, n-a만큼의 공백을 출력한..
문제 n층의 삼각형을 출력하는 프로그램을 작성하여라. Input, Output의 예제를 참고한다. 입력 첫째 줄에 정수n이 주어진다. (0≤n≤100) 출력 다음 예제와 같이 삼각형 모양으로 ‘*’을 출력한다. 예제 입력 3 예제 출력 * ** *** ------------------------------------------------------------------------------------------------------------------------------ 입력받은 수만큼의 층이 출력되고 출력되는 숫자는 하나씩 늘어남 #include using namespace std; int main() { int n; int a = 1; cin >> n; if (n == 0) return 0; el..
문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 두 번째 최솟값을 찾고, 그 두 번째 최솟값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 두 번째 최솟값은 12이고, 이 값은 4번째 수이다. 입력 첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 10,000,000 보다 작다. 출력 첫째 줄에 두 번째 최솟값을 출력하고, 둘째 줄에 두 번째 최솟값이 몇 번째 수인지를 출력한다. 예제 입력 3 29 38 12 57 74 40 85 61 예제 출력 12 4 -------------------------------------------------..

문제 두 사람 A와 B는 1부터 10까지의 숫자가 하나씩 적힌 열 장의 카드로 ‘게임’을 한다. 게임은 총 열 번의 ‘라운드’로 구성되고, 각 라운드 마다 자신이 가지고 있는 카드 중 하나를 제시하고, 한 번 제 시한 카드는 버린다. 게임 승패는 다음과 같이 결정된다. 각 라운드는 더 높은 숫자를 제시한 사람이 승리하고, 제시한 숫자가 같은 경우는 비긴다. 열 번의 라운드에서 더 많은 라운드를 승리한 사람이 게임을 승리하고, 승리한 라운드 횟수 가 동일한 경우 비긴다. 다음은 게임의 한 예로, 각 라운드마다 A와 B가 제시한 카드의 숫자와 각 라운드의 승자를 보여준다. (비긴 라운드는 D로 표시함) A는 5번의 라운드에서 승리하고 B는 4번의 라운 드에서 승리하였으므로, 이 게임은 A가 승리한다. 라운드..
문제 숫자를 입력 받아 이진수로 출력하는 프로그램을 작성하시오. 입력 첫 번째 줄에 숫자를 입력 받는다. 숫자의 크기는 1,000보다 작거나 같다. 출력 첫째 줄에 숫자를 이진수로 바꾸어 출력한다. 예제 입력 14 예제 출력 1110 예제 입력 31 예제 출력 11111 ------------------------------------------------------------------------------------------------------------------------------ 이진수로 변환하는 과정을 생각해보고 그대로 코딩하였음 2로 나눈뒤 그 나머지를 제일 뒤에 쓰고 그 몫을 또 2로 나누는 과정을 반복함 #include using namespace std; int main() { i..