본문 바로가기

백준(BOJ) 풀이

(46)
[백준 11651] 좌표 정렬하기 2 n=int(input()) lst=[tuple(map(int, input().split())) for _ in range(n)] lst=sorted(lst, key = lambda x : (x[1], x[0])) for i in range(n): print(lst[i][0], lst[i][1])
[백준 2108] 통계학 def Most(b): N=[0]*8001 for i in b: N[i+4000]=N[i+4000]+1 Max=max(N) c=[] for i in range(8001): if N[i]==Max: c.append(i-4000) c=sorted(c) if len(c)==1: return(c[0]) else : return(c[1]) n=int(input()) a=[int(input()) for _ in range(n)] print(round(sum(a)/len(a))) print(sorted(a)[int((n-1)/2)]) print(Most(a)) print(max(a)-min(a))
[백준 1018] 체스판 다시 칠하기 def NofRepaint(M,x,y): c=0 for i in range(8): for j in range(8): if int(M[x+i][y+j])!=(i+j)%2: c+=1 a=c c=0 for i in range(8): for j in range(8): if int(M[x+i][y+j])==(i+j)%2: c+=1 b=c return min(a,b) m,n=map(int, input().rstrip().split()) M=[] for i in range(m): M.append(input().rstrip().replace("B",'0').replace("W",'1')) Min=m*n for p in range(m-7): for q in range(n-7): temp=NofRepaint(M,p,q) ..
[백준 11729] 하노이 탑 이동 순서 def Hanoi(n,a,b): c=list({1,2,3}-{a,b})[0] if n!=1 : Hanoi(n-1,a,c) print(a,b) if n!=1 : Hanoi(n-1,c,b) n=int(input()) print(2**n -1) if n
[백준 8447] 별 찍기 - 10 def SierpinskiCarpet(n): a=["" for _ in range(n)] if n!=3: c=" "*int(n/3) b=SierpinskiCarpet(int(n/3)) else : b="*" c=" " k=0 for i in b: a[k]=i*3 k+=1 for i in b: a[k]=i+c+i k+=1 for i in b: a[k]=i*3 k+=1 return a n=int(input()) M=[] M=SierpinskiCarpet(n) for i in M: print(i)
[백준 4153] 직각삼각형 while True: p,q,r=map(int, input().split()) if p==0 and q==0 and r==0: break a=max(p,q,r) c=min(p,q,r) b=p+q+r-a-c if a**2-b**2-c**2==0: print("right") else : print("wrong")
[백준 3009] 네 번째 점 a,b=map(int, input().split()) p,q=map(int, input().split()) x,y=map(int, input().split()) if (a==p and b==y) or (a==x and b==q): print(p+x-a,q+y-b) if (p==a and q==y) or (p==x and q==b): print(a+x-p,b+y-q) if (x==a and y==q) or (x==p and y==b): print(a+p-x,b+q-y)
[백준 6064] 카잉 달력 from math import gcd a=int(input()) for i in range(a): m,n,x,y=map(int, input().split()) lcm=int(m*n/gcd(m,n)) k=0 if m b=int(lcm/n) for j in range(b): if (j*n+y-1)%m+1==x: print(j*n+y) k=1 else : b=int(lcm/m) for j in range(b): if (j*m+x-1)%n+1==y: print(j*m+x) k=1 if k==0: print(-1)