[coding test] Baekjoon_level 5_1차원 배열

2021. 5. 28. 20:25Python/코딩 테스트

Ver. Jupyter Notebook (Anaconda3)

▶ coding test_Baekjoon_level 5_1차원 배열

   - 백준: baekjoon

   - 코딩 및 결과: github

 

JeongJaeyoung0/coding_test

코딩테스트. Contribute to JeongJaeyoung0/coding_test development by creating an account on GitHub.

github.com

     >>> a, *b, c= [1,2,3,4,5]   # *를 붙이면 남는 리스트들 전부

     >>> print(a)

     Out: 1

     >>> print(b)

     Out: [2,3,4]

     >>> print(b)

     Out: 5

2021.05.28
# coding test_Baekjoon_level 5_1차원 배열

# 10818 (최소, 최대)-1
b=int(input())-1
a=list(map(int,input().split()))
a.sort()
print(a[0],a[b])

# 10818 (최소, 최대)-2
print(min(a:=[*map(int,[*open(0)][1].split())]),max(a))

# 2562 (최댓값)-1
# 9개의 수 중 최대값은 얼마이며, 그 자리수는 몇인가?
a=0
for i in range(9):
    b=int(input())
    if a<b:a=b;n=i+1
print(a,n)

# 2562 (최댓값)-2
print(*max((int(input()),i+1)for i in range(9)))

# 2577 (숫자의 개수)-1
# 3개의 숫자를 모두 곱한 값의 숫자들의 중복 갯수?
a=str(eval('*'.join([input()for i in range(3)])))
for b in range(10):print(a.count(str(b)))

# 2577 (숫자의 개수)-2
b=0;exec('a=1'+'*int(input())'*3+';print(str(a).count(str(b)));b+=1'*10)

# 3052 (나머지)-1
# 10개의 수를 42로 나누었을 때 나머지 값이 다른 갯수가 몇개?
print(len(set(int(input())%42for _ in range(10))))

# 3052 (나머지)-2
print(len({*eval('int(input())%42,'*10)}))

# 1546 (평균)-1
# n개의 숫자 중, 최댓값을 기준으로 나머지 수를 x/최댓값*100일 경우 전체 평균은?
a=int(input())
b=list(map(int,input().split()))
c=max(b)
print(eval('+'.join([str(i/c*100)for i in b]))/a)

# 1546 (평균)-2
input()
*a,=map(int,input().split())
print(sum(a)*100/max(a)/len(a))

# 8958 (OX퀴즈)-1
# 테스트 n번 입력, O=1 X=0 그러나 O가 연속되면 +1 일 경우 전체 수의 합
exec("""a=[+('O'==i)for i in input()]
for n in range(1,len(a)):
    if 0!=a[n] and 0!=a[n-1]:a[n]=a[n-1]+1
print(sum(a));"""*int(input()))

# 8958 (OX퀴즈)-2
exec("print(sum(i*-~i//2for i in map(len,input().split('X'))));"*int(input()))

# 4344 (평균은 넘겠지)-1
# 케이스 갯수 / 성적 갯수, 각 성적 > 평균을 넘는 학생의 비율을 소수점 3째자리 출력
exec("""a=list(map(int,input().split()))
n=0
for i in a[1:]:
    if sum(a[1:])/a[0]<i:n+=1
print('{:.3f}%'.format(round(n/a[0]*100,3)));"""*int(input()))

# 4344 (평균은 넘겠지)-2
exec(int(input())*'b,*c=map(int,input().split());print(f"{sum(b*i>sum(c)for i in c)/b:.3%}");')