13

[C언어] 백준 2577 : 숫자의 개수

백준 2577 : 숫자의 개수 문제 링크: https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 같거나 크고, 1,000보다 작은 자연수이다. www.acmicpc.net 문제 내용: 세 개의 자연수 A, B, C가 주어질 때 A*B*C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오. Idea: mod 10을 통해 일의 자리 숫자부터 계산해주고, 10으로 나눠준다. 이를 반복해준다. ※ mod 10 을 통해 해당 배열 인덱스에 접근할 수 있기 때문 Code: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17..

백준 Baekjoon 2020.07.30

[C언어] 백준 2798 : 블랙잭

백준 2798 : 블랙잭 문제 링크 https://www.acmicpc.net/problem/2798 2798번: 블랙잭 문제 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 �� www.acmicpc.net 문제 내용 (요약) N개의 카드 중 3개를 조합하여 M에 가장 가까운 숫자를 찾는 프로그램을 만들자.(단, M이상을 넘기면 안 된다.) Idea 순서에 상관없이 중복되지 않도록 카드 중 3개를 뽑는다. 카드가 N 개라면 경우의 수는 N * (N -1) * (N-2)이다. for문의 범위를 적절히 조절하도록 하자. Code 1 2 3 4 5 6 7 8 9 10 11 ..

백준 Baekjoon 2020.07.30

[C언어] 백준 10773 : 제로

백준 10773 : 제로 문제 링크 https://www.acmicpc.net/problem/10773 10773번: 제로 문제 나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 �� www.acmicpc.net 문제 내용 (요약) 0에서 1,000,000 사이의 값을 입력받다가 정수가 "0"일 경우 가장 최근에 쓴 수를 지우고, 아닐 경우 해당 수를 쓴다. 최종적으로 남은 수의 합을 구한다. Idea 0을 입력받은 경우 가장 최근의 수를 지워야 하므로 LIFO 형식이다. 이는 스택을 활용하면 쉽게 구현이 가능하다. 0을 입력받으면 pop 그 외 숫자 push Code 1 2 3..

백준 Baekjoon 2020.07.27

[C언어] 백준 10809 : 알파벳 찾기

백준 10809 : 알파벳 찾기 문제 링크 https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 문제 내용 (요약) 길이가 최대 100인 단어를 입력받아 각각의 알파벳에 대해서 처음 등장하는 위치를 공백으로 구분하여 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. Idea 이 문제는 한 문장의 알파벳 빈도수를 구하는 알고리즘을 할 줄..

백준 Baekjoon 2020.07.22

[C언어] 백준 2902 : KMP는 왜 KMP일까?

백준 2902 : KMP는 왜 KMP일까? 문제 링크 https://www.acmicpc.net/problem/2902 2902번: KMP는 왜 KMP일까? 문제 KMP 알고리즘이 KMP인 이유는 이를 만든 사람의 성이 Knuth, Morris, Prett이기 때문이다. 이렇게 알고리즘에는 발견한 사람의 성을 따서 이름을 붙이는 경우가 많다. 또 다른 예로, 유명한 비대칭 www.acmicpc.net 문제 내용 (요약) 입력받은 이름의 첫번째 글자만 엮서 새로 출력한다. 입력은 한 줄로 이루어져 있고, 최대 100글자의 영어 알파벳 대문자, 소문자, 그리고 하이폰으로만 이루어져 있다. 첫 번째 글자는 항상 대문자이다. 그리고, 하이픈 뒤에는 반드시 대문자이다. 그 외의 모든 문자는 소문자이다. ex) K..

백준 Baekjoon 2020.07.22

[C언어] 백준 2822 : 점수 계산

백준 2822 : 점수 계산 문제 링크 https://www.acmicpc.net/problem/2822 2822번: 점수 계산 문제 상근이는 퀴즈쇼의 PD이다. 이 퀴즈쇼의 참가자는 총 8개 문제를 푼다. 참가자는 각 문제를 풀고, 그 문제를 풀었을 때 얻는 점수는 문제를 풀기 시작한 시간부터 경과한 시간과 난이도로 결 www.acmicpc.net 문제 내용 (요약) 참가자는 총 8개의 문제를 푼다. 이 때, 참가자의 총 점수는 가장 높은 점수 5개의 합이다. 첫째 줄에는 참가자의 총점을 출력하고, 둘째 줄에는 어떤 문제가 최종 점수에 포함되었는지를 공백으로 구분하여 출력한다. 출력은 문제 번호가 증가하는 순서이어야 한다. Idea 이 문제를 풀기위해서는 점수가 높은 5문제의 합과 문제 번호가 필요하다..

백준 Baekjoon 2020.07.21

[C언어] 백준 6378 : 디지털 루트

백준 6378 : 디지털 루트 문제 링크 https://www.acmicpc.net/problem/6378 6378번: 디지털 루트 문제 양의 정수 N의 디지털 루트를 구하려면 N을 이루고 있는 모든 자리수를 더해야 한다. 이때, 더한 값이 한 자리 숫자라면, 그 수가 N의 디지털 루트가 된다. 두 자리 이상 숫자인 경우에는 다�� www.acmicpc.net 문제 내용 (요약)양의 정수 N의 디지털 루트를 구하려면 N을 이루고 있는 모든 자리수를 더해야 한다. 이때, 더한 값이 한 자리 숫자라면, 그 수가 N의 디지털 루트가 된다. 두 자리 이상 숫자인 경우에는 다시 그 수를 이루고 있는 모든 자리수를 더해야하며, 한 자리 숫자가 될 때 까지 반복한다. 양의 정수 N이 주어졌을 때, 그 수의 디지털 루..

백준 Baekjoon 2020.07.21

[C언어] 백준 4659 : 비밀번호 발음하기

백준 4659 : 비밀번호 발음하기 문제 링크 https://www.acmicpc.net/problem/4659 4659번: 비밀번호 발음하기 문제 좋은 패스워드를 만드는것은 어려운 일이다. 대부분의 사용자들은 buddy처럼 발음하기 좋고 기억하기 쉬운 패스워드를 원하나, 이런 패스워드들은 보안의 문제가 발생한다. 어떤 사이트들�� www.acmicpc.net 문제 내용 (요약) 입력받은 패스워드에 대해 품질을 평가한다. 높은 품질을 가진 비밀번호의 조건은 다음과 같다. 모음(a, e, i, o ,u) 하나를 반드시 포함하여야 한다. 모음이 3개 혹은 자음이 3개 연속으로 오면 안된다. 같은 글자가 연속적으로 두번 오면 안되나, ee와 oo는 허용한다. end를 입력하면 프로그램을 종료한다. Idea 이..

백준 Baekjoon 2020.07.21

[C언어] 백준 9557 : Arabic and English

백준 9557 : Arabic and English 문제 링크 https://www.acmicpc.net/problem/9557 9557번: Arabic and English Some computer programs have problems in displaying Arabic text, especially when mixed with English words in the same line, because Arabic is written from right to left and English is written from left to right. In this problem we will try to fix a text wit www.acmicpc.net 문제 내용 (요약) 한 줄에 아랍어 '#'으로 이..

백준 Baekjoon 2020.07.20

[C언어] 백준 1003 : 피보나치 함수

백준 1003 : 피보나치 함수 문제 링크 https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 문제 내용 (요약) 위 함수는 피보나치 수열에서 사용된 0과 1을 출력하는 함수이다. N이 주어졌을 때, fibonacci(n)을 호출했을 때, 0과 1이 각각 몇 번 출력되는지 구하는 프로그램을 작성하시오. Idea 해당 문제에 대한 접근은 이 역시 피보나치 수열을 활용한다고 보면 된다. 이 문제를 풀기전에 아래 기본적인 피보나치 수열에 대한 문제를 풀고오면 좋다. https://wtg-study.tistory.com/4 [JAVA] 백준 2748 ..

백준 Baekjoon 2020.07.20