[백준] CLASS1 - 1

이하나·2021년 12월 16일
0

백준 문제 풀이

목록 보기
1/4

[ 1000 ] A + B

사용 언어 : 파이썬
문제:
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
( 첫째 줄에 A와 B가 주어진다. (0 < A, B < 10) )
제출
a,b = map(int, input().split())
# 입력된 값을 input().split()으로 분리해준 뒤 map을 이용해 a와 b에 각각 숫자로 넣어준다.
print(a+b)
# 더한 값을 프린트 한다.

[ 1001 ] A - B

사용 언어 : 파이썬
문제:
두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오.
( 첫째 줄에 A와 B가 주어진다. (0 < A, B < 10) )
제출
a,b = map(int, input().split())
print(a-b)
# 001 번과 같은 풀이에서 연산만 바뀜.

[ 1008 ] A / B

사용 언어 : 파이썬
문제:
두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.
( 첫째 줄에 A와 B가 주어진다. (0 < A, B < 10) )
제출
a,b = map(int, input().split())
print(a/b)
# 001 번과 같은 풀이에서 연산만 바뀜.

[ 1152 ] 단어의 개수

사용 언어 : 파이썬
문제:
영어 대소문자와 공백으로 이루어진 문자열이 주어진다.
이 문자열에는 몇 개의 단어가 있을까?
이를 구하는 프로그램을 작성하시오.
단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다.
( 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다.
   이 문자열의 길이는 1,000,000을 넘지 않는다.
   단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다.
   또한 문자열은 공백으로 시작하거나 끝날 수 있다. )
제출
A = input().split()
# 입력된 문장을 띄어쓰기 기준으로 나눈 뒤,
print(len(A))
# 길이를 프린트 한다.

[ 1157 ] 단어 공부

사용 언어 : 파이썬
문제:
알파벳 대소문자로 된 단어가 주어지면,
이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오.
단, 대문자와 소문자를 구분하지 않는다.
( 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다.
  주어지는 단어의 길이는 1,000,000을 넘지 않는다. )
제출
Word = input().upper()
# 입력된 값을 받아 전부 대문자로 변환해 준다.
Only = list(set(Word))
# Word에서 중복된 문자열을 제거해 Only에 넣어준다.
Count_list = []
# 빈 리스트를 하나 생성해서,
for i in Only:
   Count_list.append(Word.count(i))
# 반복문을 통해 Only의 요소를 하나씩 가져와 Word에서 몇번 사용되는지 Count하여 Count_list에 넣어준다.
# 이때 Only에서 순차적으로 요소를 가져와 사용하는 것이므로 Only와 Count_list의 각 대치되는 원소의 위치가 같다.
if Count_list.count(max(Count_list)) > 1 :
   print("?")
# Count_list의 최대값의 수가 1개 이상, 즉, 가장 많이 쓰인 문자가 여러개일때는 ?를 프린트,
else :
   index_max = Count_list.index(max(Count_list))
   print(Only[index_max])
# 그 외, 즉, 최대값이 오로지 1개 일때는 Count_list에서 최대값의 위치를 받아와 Only에서 그 위치의 문자를 프린트 해준다.

[ 1330 ] 두 수 비교하기

사용 언어 : 파이썬
문제:
두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오.
( 첫째 줄에 A와 B가 주어진다.
  A와 B는 공백 한 칸으로 구분되어져 있다. )
* A가 B보다 클 때 '>'
* A가 B보다 작을 때 '<'
* A와 B가 같을 때 '=='
제출
a,b = map(int, input().split())
# 입력된 값을 각각 a, b 에 넣어준다.
if a == b :
   print("==")
# a와 b가 같을 때는 ==,
elif a > b :
   print(">")
# a가 클 때는 >,
elif a < b :
   print("<")
# a가 작을 때는 < 를 프린트 해준다.

[ 1546 ] 평균

사용 언어 : 파이썬
문제:
세준이는 기말고사를 망쳤다.
세준이는 점수를 조작해서 집에 가져가기로 했다.
일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다.
그리고 나서 모든 점수를 점수/M*100으로 고쳤다.
예를 들어, 세준이의 최고점이 70이고, 수학점수가 50이었으면
수학점수는 50/70*100이 되어 71.43점이 된다.
세준이의 성적을 위의 방법대로 새로 계산했을 때,
새로운 평균을 구하는 프로그램을 작성하시오.
( 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다.
  둘째 줄에 세준이의 현재 성적이 주어진다.
  이 값은 100보다 작거나 같은 음이 아닌 정수이고,
  적어도 하나의 값은 0보다 크다. )
제출
N = int(input())
# 처음 주어지는 과목 수를 N,
Score = list(map(int, input().split()))
# 두번째로 주어지는 점수들을 split 해서 Score 라는 리스트에 넣어준다.
M = max(Score)
# Score에서 가장 큰 수를 M으로 하고
Lie = []
# 조작한 점수가 들어갈 리스트를 만든 후
for i in Score:
   Lie.append(i/M *100)
# Score에서 i를 하나씩 가져와서 i/M*100 으로 조작해서 Lie에 넣어준다.
avrg_Score = sum(Lie)/N
# Lie의 모든 합을 과목 수 N으로 나눴을 때 나오는 평균값 avrg_Score을
print(avrg_Score)
# 프린트 해준다.
profile
코딩을 배우는 비전공자 코린이!

0개의 댓글