포도가게의 개발일지

백준 01일차 본문

백준

백준 01일차

grape.store 2021. 8. 6. 09:41
반응형

5. 윤년 문제 if 사용법 알기

더보기

4번 문제 윤년

a = int(input())

if a%4 == 0:

if a%100 == 0:

if a%400 == 0:

print("1")

else:

print("0")

if a%100 != 0:

print("1")

else:

print('0')

 

6. 직사각형 내부에서 최소 거리 찾기

더보기

x,y,w,h = map(int,input().split())

check_min = [x-0,w-x,y-0,h-y]

print(min(check_min))

7. 구구단 %d 사용법 알기

더보기

n = int(input())

for x in range(9):

print('{0} * {1} = {2}'.format(n,x+1,n*(x+1)))

8. 배열 값 저장 append() 사용

더보기

t = int(input())

array_x=[]

array_y=[]

for x in range(t):

a,b = input().split()

array_x.append(a)

array_y.append(b)

print(int(array_x[x])+int(array_y[x]))

9. 별그리기

더보기

n = int(input())

for x in range(n):

print('*'*(x+1))

10. print 줄바꿈 막기

더보기

n,check_num = map(int,input().split())

array = input().split()

result_array = []

for x in array:

result_array.append(int(x))

last_result = []

for check in result_array:

if check < check_num:

last_result.append(check)

for x in last_result:

print(x, end=' ')

# python print 함수는 기본적으로 print('hello world', end='\n')으로 되어있어 자동 줄바꿈남

11. array index 원하는 위치값 출력 방법

더보기

array = []

for x in range(9):

tmp_a = int(input())

array.append(tmp_a)

tmp = max(array)

print(max(array))

print(array.index(tmp)+1)

12. OX 퀴즈 점수 띄어쓰기없이 들어오는 input값 str나누기 필요

더보기

n = int(input())

arr = []

for x in range(n):

tmp = input().split()

arr.append(tmp)

for y in range(n):

arr_arr = []

## 여기서 ['oxo'] -> ['o','x','o']로 변환

for i in range(len(arr[y][0])):

arr_arr.append(arr[y][0][i])

#print(f'{arr_arr}array')

score = 0

tmp_answer = []

for x in arr_arr:

tmp_answer.append(x)

if x != 'O':

tmp_answer = []

if x == 'O':

score += len(tmp_answer)

else:

score += 0

print(score)

13. 학생 평균 넘는 백분율 반올림 함숨 round 자릿수 고정 검색

더보기

test_n = int(input())

test_arr = []

for x in range(test_n):

test = input().split()

test_arr.append(test)

for y in test_arr:

num = int(y[0])

sums = 0

avg = 0

count = 0

del y[0]

for i in y:

sums += int(i)

avg = sums / num

 

for i in y:

if int(i) > avg:

count += 1

result = round(count/num*100,3)

print(f'{result:.3f}%')

14. str count 검색 기능

더보기

a = int(input())

b = int(input())

c = int(input())

result = str(a*b*c)

search = ['0','1','2','3','4','5','6','7','8','9']

for x in search:

print(result.count(x))

15. 함수만들기 제출페이지로 가면 함수가 구현되있어 완성만 하면됨

더보기

a = [1,2,3,4,5]

 

def solve(a):

ans = 0

for x in a:

ans = ans + x

return ans

result = solve(a)

print(result)

16. 아스키 코드 변환

더보기

## 문자열 -> 아스키

a = input()

print(ord(a))

## 아스키 -> 문자열

chr(a)

17. 문자열 합치기 ''(구분자),join(합칠리스트)

더보기

test_num = int(input())

arr = []

for x in range(test_num):

que = input().split()

arr.append(que)

for y in arr:

repeat = int(y[0])

del y[0]

length = len(y[0])

result = []

for i in range(length):

result.append(y[0][i]*repeat)

print(''.join(result))



18. 배열 str 개수세기

더보기

a = input().split()

print(len(a))

## len 길이 말고도

## count() 함수는 원하는 값이 몇개 들어있는지 세는거다

19. 배열 뒤집기 reverse함수와 reversed함수

더보기

a,b = input().split()

arr1 = []

arr2 = []

length1 = len(a)

length2 = len(b)

for x in range(length1):

arr1.append(a[x])

arr1.reverse()

for x in range(length2):

arr2.append(b[x])

arr2.reverse()

x = int(''.join(arr1))

y = int(''.join(arr2))

if x > y:

print(x)

else:

print(y)

 

20. 달팽이 올라가기

더보기

import math

 

a,b,c = map(int,input().split())

result = (c-a) / (a-b) + 1

print(math.ceil(result))

 

등차 수열

a1 = a1

a2 = a1 + d

a3 = a2 + d = a1 +d + d = a1 + (n-1)d = 높이

21. 소수찾기 문제

더보기

import sys

 

num = int(sys.stdin.readline())

que = list(map(int,sys.stdin.readline().split()))

count_check = 0

for x in que:

count = 0

for i in range(2, x+1):

if x%(i) == 0:

count += 1

if count == 1:

count_check += 1

print(count_check)

 

## 소수찾는거 만들어봄

 

def check(num):

count = 0

for i in range(2, num+1):

if num%(i) == 0:

count += 1

if count == 1:

return print('소수입니다')

 

check(11)

22. 골드바흐

더보기

import sys

 

def check(num):

count = 0

 

for i in range(2, num+1):

if num%(i) == 0:

count += 1

if count == 1:

prime_number.append(num)

return

 

num = int(sys.stdin.readline())

real = []

for zzz in range(num):

zt = sys.stdin.readline()

real.append(int(zt))

 

for math in real:

prime_number = []

front_data = []

end_data = []

min_data = []

max_data = []

#math = 100

min_what = 10000000

for i in range(1, math+1):

check(i)

length = int(len(prime_number)/2)+1

for x in prime_number[0:length]:

for j in prime_number:

if x + j == math:

front_data.append(x)

end_data.append(j)

for k in range(len(front_data)):

what = abs(front_data[k] - end_data[k])

if what < min_what:

min_what = what

min_data = front_data[k]

max_data = end_data[k]

print(min_data, max_data)

 

///////////////////////////////////////////////////////////////////////////시간초과///////////////////////////////////////////////////////////////////////////

  ## 에라토노스 테네스의 체로 미리 소수 판별 만들어놓기 -> clear 단축 -> ex)100 이면 50으로가 소수체크 아니면 1씩 멀어짐

prime_number = [False,False] + [True]*(10000-1)

for i in range(2,10000+1):

if prime_number[i]:

for j in range(2*i,10000+1, i):

prime_number[j] = False



def check(num):

if prime_number[num] == True:

return print('소수입니다')

else:

return print('소수가 아닙니다')

 

 

'백준' 카테고리의 다른 글

python 백준 1655번 수찾기(이분탐색)  (0) 2021.08.15
python 백준 2468번 안전영역  (0) 2021.08.11
백준 10971번 외판원의 순회 2  (0) 2021.08.10
백준 03일차  (0) 2021.08.09
백준 02일차  (0) 2021.08.07
Comments