www.acmicpc.net/problem/1157

 

1157번: 단어 공부

알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.

www.acmicpc.net

s = input().lower() # 입력을 소문자로 변환

# 배열에 count값으로 a~z값을 넣어줌

 

arr = []

 

for i in range(97, 123):

arr.append(s.count(chr(i)))

 

cnt = 0 # 최대값의 수를 세는 변수

index = 0 # 인덱스의 값을 저장해두기위한 용도

 

for i,x in enumerate(arr): # enumerate 는 해당 count구한 a~z 에 인덱스를 부여 i = 0 , x = 배열 끝 마지막 인덱스를 의미

if x == max(arr): # 인덱스 끝까지 탐색하여 max(arr) 랑 같다면 ex) [0,3,1,2,3] 3 == 3

cnt+=1 # 최대값 수 +1

index = i # 해당 인덱스 위치를 index에 저장한다.

 

# arr배열에서 값이 최대값 수가 두개이상인 것이 있을떈 ?

 

if cnt>1:

print('?')

# 1개이하라면 'a' + 가장큰 수의 인덱스를 더해서 출력한다.(, 대문자 이므로 upper() 사용)

 

else:

print(chr(97+index).upper())

 

어려웠어서 다시 풀어야할 문제!

이거 풀땐 upper(), lower(), enumerat()함수를 몰랐어서 어려웠다.

enumerate() : 해당 count를 구한 a~z에 인덱스를 부여해준다. 0~배열 마지막 인덱스까지

www.acmicpc.net/problem/1152

 

1152번: 단어의 개수

첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한

www.acmicpc.net

word_list=str(input()) #split()str문자열만 사용가능. 배열은 불가능

str2=word_list.split()

print(len(str2))

www.acmicpc.net/problem/1008

 

1008번: A/B

두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 

 

a,b = map(int,input().split())
print(a/b)

www.acmicpc.net/problem/1001

 

1001번: A-B

두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

a,b = map(int,input().split())
print(a-b)

'알고리즘 > [BAEKJOON] - class1' 카테고리의 다른 글

[Python] Baekjoon - 1152번 : 단어의 개수  (0) 2021.01.30
[Python] Baekjoon - 1008번 : A/B  (0) 2021.01.30
[Python] Baekjoon - 1000번 : A+B  (0) 2021.01.30
백준 #10845_C++  (0) 2021.01.25
백준 #2675 _Python  (0) 2021.01.23

www.acmicpc.net/problem/1000

 

1000번: A+B

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

A,B = map(int,input().split(" "))
print(A+B)

 

풀이) 파이썬에서 a,b를 한번에 공백으로 입력받으려면 map을 사용해야한다. 사용법은

A,B - map(int, input().split(" ")) 

split은 공백 기준으로 분리해서 입력받는다는 뜻.

'알고리즘 > [BAEKJOON] - class1' 카테고리의 다른 글

[Python] Baekjoon - 1152번 : 단어의 개수  (0) 2021.01.30
[Python] Baekjoon - 1008번 : A/B  (0) 2021.01.30
[Python] Baekjoon - 1000번 : A-B  (0) 2021.01.30
백준 #10845_C++  (0) 2021.01.25
백준 #2675 _Python  (0) 2021.01.23

 

swexpertacademy.com/main/learn/course/lectureProblemViewer.do

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

 

result=''

for i in range(1,101):

    if(i%2!=0):

        result+=str(i)+","+" "

print(result[:-2])

 

출력값이 , + 공백 으로 1, 3, 5, ... 식으로 출력되면서 마지막의 쉼표는 출력되지 않아야하므로,

원래 마지막의 쉼표를 출력하지 않으려면 result라는 string을 선언한 후, print에서 슬라이싱으로 뒤의 문자 한개를 지우는 것이었는데 ,+ 공백이므로 뒤의 문자 2개를 지워주도록 한다.

result+=str(i)+","+" "

print(result[:-2])

이렇게 코드를 작성해주면 된다.

swexpertacademy.com/main/learn/course/lectureProblemViewer.do

 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

1~100까지 짝수 출력하기

 

for i in range(1,101):

    if(i%2==0):

        print(i, end=' ')

swexpertacademy.com/main/learn/course/lectureProblemViewer.do

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

문제: 1부터 100까지의 함수 for문으로 출력하기.

 

for i in range(1,101):

    print(i)

+ Recent posts