본문 바로가기

프로그램 관련8

[백준 2609] 최대공약수와 최소공배수 최대공약수와 최소공배수 문제 두 개의 자연수를 입력받아 최대 공약수와 최소 공배수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에는 두 개의 자연수가 주어진다. 이 둘은 10,000이하의 자연수이며 사이에 한 칸의 공백이 주어진다. 출력 첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다. 예제 입력 24 18 예제 출력 6 72 알고리즘 분류 수학 정수론 유클리드 호제법 코드 풀이 Python을 활용해서 본 문제를 푼다고 가정했을 때, 크게 3가지 방법으로 문제를 해결할 수 있다. 간단한 2가지 방법과, 정석적인 1가지 방법을 모두 소개해보도록 하겠다. 먼저 파이썬3 기준으로 최대공약수를 바로 구해주는 함수를 이용하여 문제를 풀어보자. 파이.. 2023. 4. 28.
[백준 10809] 알파벳 찾기 알파벳 찾기 문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 출력 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. 예제 입력 baekjoon 예제 출력 1 0 -1 -1 2 -1 -1 -1 -1 4 3 -1 -1 7.. 2023. 4. 26.
[백준] 별 찍기 - 1번부터 9번까지 for 문을 활용한 대표적인 구현 문제 시리즈 중 하나로, 대표적으로 '별 찍기', '수열 출력하기', '문자열 출력하기' 등이 존재한다. 그 중에서도 가장 고전적이고 기초적이지만 파생 문제가 다양한 별찍기 문제를 조금씩 풀어보려 한다. 일단, 백준 사이트에서 1번 ~ 9번까지의 문제들을 간단하게 정리해봤다. 문제 수가 많아서 상세 내용은 생략하고, 공통 조건만 적고 개별 풀이로 바로 넘어가는 식으로 정리했다. 파이썬3을 기준으로 문제를 해결하였다. 별 찍기 - 공통 조건 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 별 찍기 - 1 가장 기초적인 문제이다. 첫 번째 줄에는 별 한 개, 두 번째 줄에는 별 두 개, ... 이런식으로 출력해.. 2023. 4. 23.
[SQL] LIKE를 써서 원하는 조건의 데이터만 뽑아내기 이번에는 SQL 구문에서 정말 많이 사용되는 요소 중 하나인 LIKE문에 관해 알아보도록 할 예정이다. LIKE문의 경우, 흔히 와일드카드(Wildcard) 문자열과 함께 사용해서 원하는 조건의 문자열을 지닌 데이터를 추출하기 위해서 자주 사용된다. 특히나 실무적으로도 자주 사용되는 구문이므로 해당 내용은 꼭 알아두길 바란다. 먼저, 다음의 경우를 생각해보자. 데이터 추출 작업을 위해 데이터베이스에서 원하는 데이터를 뽑아야 하는 상황에 직면했다 생각하자. 주어진 고객 정보 테이블(CUSTOMER)에서 원하는 정보를 뽑아야 하는데, 다음의 조건이 주어졌다 하자. " 고객명(NAME)에서 성은 김씨로 시작하는데, 이름이 외자가 아닌 사람들을 모두 뽑아주세요 " 위와 같은 조건을 한 줄의 SQL구문으로 처리하.. 2023. 4. 17.