전체 글 99

[파이썬/백준1546] 평균 - list.append()

1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 문제 세준이는 기말고사를 망쳤다. 세준이는 점수를 조작해서 집에 가져가기로 했다. 일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다. 그리고 나서 모든 점수를 점수/M*100으로 고쳤다. 예를 들어, 세준이의 최고점이 70이고, 수학점수가 50이었으면 수학점수는 50/70*100이 되어 71.43점이 된다. 세준이의 성적을 위의 방법대로 새로 계산했을 때, 새로운 평균을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 시험 본 과목의 개..

Algorithm/백준 2023.03.04

[파이썬/백준2742] 기찍 N

2742번: 기찍 N 자연수 N이 주어졌을 때, N부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제 자연수 N이 주어졌을 때, N부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 100,000보다 작거나 같은 자연수 N이 주어진다. 출력 첫째 줄부터 N번째 줄 까지 차례대로 출력한다. # sol.1 (96ms) n = int(input()) a = 0 for i in range(n): a = n-i print(a) 이건 내가 한 방법 별 찍기 문제와 비슷한 풀이로 풀었다 # SOL.2 (96ms) n = int(input()) for i in range(n, 0, -1):# n부터 0까지 -1씩 줄어드는 반복문 print(i) # s..

Algorithm/백준 2023.03.04

[파이썬/백준 14681] 사분면 고르기

14681번: 사분면 고르기 점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다. www.acmicpc.net 문제 흔한 수학 문제 중 하나는 주어진 점이 어느 사분면에 속하는지 알아내는 것이다. 사분면은 아래 그림처럼 1부터 4까지 번호를 갖는다. "Quadrant n"은 "제n사분면"이라는 뜻이다. 예를 들어, 좌표가 (12, 5)인 점 A는 x좌표와 y좌표가 모두 양수이므로 제1사분면에 속한다. 점 B는 x좌표가 음수이고 y좌표가 양수이므로 제2사분면에 속한다. 점의 좌표를 입력받아 그 점이 어느 사분면에 속하는지 알아내는 프로그램을 작성하시오. 단, x좌표와 y좌표는 모두 양수나 음수라고 가정한다. 입력 첫 줄에는 정수 x가 주어진다. (−1000 ≤ x ≤ 1000; x ≠ ..

Algorithm/백준 2023.03.03

[프로그래머스/SQL 고득점 Kit] SELECT - 재구매가 일어난 상품과 회원 리스트 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 다음은 어느 의류 쇼핑몰의 온라인 상품 판매 정보를 담은 ONLINE_SALE 테이블 입니다. ONLINE_SALE 테이블은 아래와 같은 구조로 되어있으며 ONLINE_SALE_ID, USER_ID, PRODUCT_ID, SALES_AMOUNT, SALES_DATE는 각각 온라인 상품 판매 ID, 회원 ID, 상품 ID, 판매량, 판매일을 나타냅니다. Column nameTypeNullable ONLINE_SALE_ID INTEGER FALSE USER_ID INTEGER FALSE PRODUCT_..

[파이썬/백준3052] 나머지 - append, % , set

# sol.1 (40ms) arr = []# 빈 배열 만들기 for i in range(10): n = int(input()) arr.append(n%42) # 입력값을 42로 나눈 나머지들을 arr에 넣어줌 arr = set(arr)# set함수는 집합 자료형으로 변환(중복 제거) print(len(arr))# len함수는 길이 출력 # sol.2 arr = [] for i in range(10): n = int(input()) if n%42 not in arr: arr.append(n%42) print(len(arr)) a % b : a를 b로 나눈 나머지 set() : 집합 자료형으로 변환(중복 제거) len() : 길이 출력 이때, set() 함수는 중복 제거해주지만 순서가 섞일 수 있음!!

Algorithm/백준 2023.02.19

[파이썬/백준 11720] 숫자의 합

https://www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. 출력 입력으로 주어진 숫자 N개의 합을 출력한다. 예제 입력 1 복사 1 1 예제 출력 1 복사 1 예제 입력 2 복사 5 54321 예제 출력 2 복사 15 예제 입력 3 복사 25 7000000000000000000000000 예제 출력 3 복사 7 예제 입력 4 복사 ..

Algorithm/백준 2023.02.18

[프로그래머스/SQL 고득점 Kit] String, Date - 자동차 대여 기록에서 장기/단기 대여 구분하기

https://school.programmers.co.kr/learn/courses/30/lessons/151138 # MySQL - SOL.1 - DATEDIFF(끝 날짜, 시작 날짜) & WHERE LIKE '% %' SELECT HISTORY_ID , CAR_ID , DATE_FORMAT(START_DATE, '%Y-%m-%d') AS START_DATE , DATE_FORMAT(END_DATE, '%Y-%m-%d') AS END_DATE , CASE WHEN DATEDIFF(END_DATE,START_DATE) +1 >= 30 THEN '장기 대여' ELSE '단기 대여' END AS RENT_TYPE FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE START_DA..

[프로그래머스/SQL 고득점 Kit] String, Date - 특정 옵션이 포함된 자동차 리스트 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/157343 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # MySQL SELECT * FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%네비게이션%' ORDER BY CAR_ID DESC; 분명 맞는 코드인데 자꾸 틀렸다고 나와서 황당했는데 알고 봤더니 '% %' 사이에 습관적으로 공백을 두었다.. ㅎㅎ.. 어이없는 실수들 줄이는 게 최우선 과제다

[프로그래머스/SQL 고득점 Kit] IS NULL - 나이 정보가 없는 회원 수 구하기

https://school.programmers.co.kr/learn/courses/30/lessons/131528 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr # MySQL - SOL.1 SELECT COUNT(USER_ID) AS USERS FROM USER_INFO WHERE AGE IS NULL # MYSQL - SOL.2 - COUNT(*) SELECT COUNT(*) AS USERS FROM USER_INFO WHERE AGE IS NULL