Data Scientist 옌

매일 발전하는 IT문제해결사

728x90

Programing 프로그래밍 58

[백준] 13단계: 정렬

※ 1~5번은 이전에 풀었던 문제라 생략합니다. 6. [1427] 소트인사이드 배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자. num = str(input()) num_list = [] for i in num: num_list.append(i) num_list = sorted(num_list, reverse=True) print(''.join(num_list)) 7. [11650] 좌표 정렬하기 2차원 평면 위의 점 N개가 주어진다. 좌표를 x좌표가 증가하는 순으로, x좌표가 같으면 y좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오. N = int(input()) num_list = [] for _ in range(N): num_list.app..

[백준] 12단계: 브루트 포스

1. [2798] 블랙잭 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 있다. 한국 최고의 블랙잭 고수 김정인은 새로운 블랙잭 규칙을 만들어 상근, 창영이와 게임하려고 한다. 김정인 버전의 블랙잭에서 각 카드에는 양의 정수가 쓰여 있다. 그 다음, 딜러는 N장의 카드를 모두 숫자가 보이도록 바닥에 놓는다. 그런 후에 딜러는 숫자 M을 크게 외친다. 이제 플레이어는 제한된 시간 안에 N장의 카드 중에서 3장의 카드를 골라야 한다. 블랙잭 변형 게임이기 때문에, 플레이어가 고른 카드의 합은 M을 넘지 않으면서 M과 최대한 가깝게 만들어야 한다. N장의 카드에 써져 있는 숫..

[백준] 11단계: 시간 복잡도

1. [24262] 알고리즘 수업 - 알고리즘의 수행 시간 1 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시간을 예제 출력과 같은 방식으로 출력해보자. MenOfPassion 알고리즘은 다음과 같다. MenOfPassion(A[], n) { i = ⌊n / 2⌋; return A[i]; # 코드1 } print("1") print("0") 2. [24263] 알고리즘 수업 - 알고리즘의 수행 시간 2 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어..

[백준] 10단계: 직사각형과 삼각형

1. [27323] 직사각형 정수 A, B 가 주어진다. 세로 길이가 A cm, 가로 길이가 B cm 인 아래와 같은 직사각형의 넓이를 cm2 단위로 구하시오. A = int(input()) B = int(input()) print(A*B) 2. [1085] 직사각형에서 탈출 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오. x, y, w, h = map(int, input().split()) print(min(min(w-x, x), min(h-y, y))) 3. [3009] 네번째 점 세 점이 주어졌을 때, 축에 평행한 직사각형을 만..

[백준] 8~9단계: 추가문제

1. [2745] 진법 변환 B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 사용한다. A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35 N, B = input().split() digits = {"0": 0, "1": 1, "2": 2, "3": 3, "4": 4, "5": 5, "6": 6, "7": 7, "8": 8, "9": 9, "A": 10, "B": 11, "C": 12, "D": 13, "E": 14, "F": 15, "G": 16, "H": 17, "I": 18, "J": 19, "K": 20, "L": 21, "M"..

[백준] 5~7단계: 추가문제

1. [27866] 문자와 문자열 단어 S와 정수 i가 주어졌을 때, S의 i번째 글자를 출력하는 프로그램을 작성하시오. S = input() i = int(input()) S_list = [] for w in S: S_list.append(w) print(S_list[i-1]) 2. [2743] 단어 길이 재기 첫째 줄에 영어 소문자와 대문자로만 이루어진 단어가 주어진다. 단어의 길이는 최대 100이다. S = input() print(len(S)) 3. [9086] 문자열 문자열을 입력으로 주면 문자열의 첫 글자와 마지막 글자를 출력하는 프로그램을 작성하시오. N = int(input()) for _ in range(N): S = input() print(S[0]+S[-1]) 4. [11718] 그대..

[백준] 1~4단계: 추가문제

1. [11382] 꼬마정민 꼬마 정민이는 이제 A + B 정도는 쉽게 계산할 수 있다. 이제 A + B + C를 계산할 차례이다! A, B, C = map(int, input().split()) print(A + B + C) 2. [25304] 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것이 맞는지 확인해보려 한다. 영수증에 적힌, 구매한 각 물건의 가격과 개수 구매한 물건들의 총 금액 을 보고, 구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하는지 검사해보자. total = int(input()) price = 0 for i i..

[백준] 9단계: 2차원 배열

1. [2738] 행렬 덧셈 N*M크기의 두 행렬 A와 B가 주어졌을 때, 두 행렬을 더하는 프로그램을 작성하시오. N, M = map(int, input().split()) matrix_a = [] matrix_b = [] for _ in range(N): matrix_a.append(list(map(int, input().split()))) for _ in range(N): matrix_b.append(list(map(int, input().split()))) for i in range(N): for j in range(M): print(matrix_a[i][j] + matrix_b[i][j], end=' ') print('') 2. [2566] 최댓값 과 같이 9×9 격자판에 쓰여진 81개의 자연수..

[백준] 8단계: 기본 수학2

1. [1978] 소수 찾기 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. n = int(input()) num_list = list(map(int, input().split())) prime_cnt = 0 for i in num_list: cnt = 0 if i == 1: # 1은 소수가 아니기 때문에 건너띔 continue for j in range(2, i+1): if i % j == 0: cnt += 1 if cnt == 1: prime_cnt += 1 print(prime_cnt) Comment: for문으로 조건에 맞는 list 인자를 pop하겠다는 발상은 앞으로 폐기 처리할 것, 소수 수를 새는 것은 어떻게 가능했는데, 소수 배열을 내보내는 방법은 아직 고민..

[백준] 7단계: 기본 수학1까지 추가 문제 수정 업로드

오늘따라 시간이 좀 남아서 추가된 문제를 풀었습니다. 1. [3003] 킹, 퀸, 룩, 비숍, 나이트, 폰 - 1단계: 입출력과 사칙연산 동혁이는 오래된 창고를 뒤지다가 낡은 체스판과 피스를 발견했다. 체스판의 먼지를 털어내고 걸레로 닦으니 그럭저럭 쓸만한 체스판이 되었다. 하지만, 검정색 피스는 모두 있었으나, 흰색 피스는 개수가 올바르지 않았다. 체스는 총 16개의 피스를 사용하며, 킹 1개, 퀸 1개, 룩 2개, 비숍 2개, 나이트 2개, 폰 8개로 구성되어 있다. 동혁이가 발견한 흰색 피스의 개수가 주어졌을 때, 몇 개를 더하거나 빼야 올바른 세트가 되는지 구하는 프로그램을 작성하시오. a = list(map(int, input().split())) correct = [1, 1, 2, 2, 2, ..

DBeaver로 Tibero6 데이터베이스 연결하기

일하다보니 Tibero DB로 작업하게 되어서 연결 방법을 작성해봅니다. Tibero DB 서버가 따로 있다는 가정 하에 DBeaver로 연결해보겠습니다. 1. 우선 DBeaver를 다운로드 받아봅시다. 저는 Windows 환경이니 Windows installer를 선택하여 받았습니다. 2. DBeaver를 다운받자마자 실행하면 데이터베이스를 만들 것이냐고 물어보는데 그렇게 하지 않습니다. 맨 위의 탭에서 '데이터베이스>드라이버 관리자'를 실행합니다. 3. 드라이버 관리자에서 'New'를 클릭하여 아래 그림처럼 작성합니다. Driver Name: 적당히 쓰시면 됩니다. Class Name: com.tmax.tibero.jdbc.TbDriver ← 그대로 쓰세요. URL Template: jdbc:tibe..

Amazon AWS 환불 신청기

아침에 알람으로 일어나는데 휴대폰 알림센터에 아마존이 42만원 결제하려다 거절되었다는 알람에 놀라서 잠이 확 깨더군요. 제 통장에 42만원에 달하는 돈이 없어서 거절되었고요, 처음엔 보이스피싱 같은거 당한건가 고민했어요. 그러다 생각해보니 지난 달에 제가 교육원에서 프로젝트 하려고 만들어 놓은 RDB가 생각이 나고... 세수도 안하고 우선 앉아서 아마존 AWS에 로그인하여 살펴보는데 그 RDB가 아직도 가동되는 중이라서 놀라서 펄쩍 뛰면서 인스턴스 삭제를 연타했습니다. 그래도 빌링 페이지 가보니 22년 7월 42만원의 결제요청은 있고.. 심지어는 8월 분도 3만원에 달하게 나오는 중이었어요. 아무것도 안했는데 40만원을 내야한다는 사실에 충격받은 저는 같이 스터디 하는 언니가 고객센터에 문의해서 조정받은..

728x90