이분탐색 3

[알고리즘] 백준 7795 파이썬 - 먹을 것일가 먹힐 것인가

7795번: 먹을 것인가 먹힐 것인가 심해에는 두 종류의 생명체 A와 B가 존재한다. A는 B를 먹는다. A는 자기보다 크기가 작은 먹이만 먹을 수 있다. 예를 들어, A의 크기가 {8, 1, 7, 3, 1}이고, B의 크기가 {3, 6, 1}인 경우에 A가 B를 먹을 www.acmicpc.net 문제 심해에는 두 종류의 생명체 A와 B가 존재한다. A는 B를 먹는다. A는 자기보다 크기가 작은 먹이만 먹을 수 있다. 예를 들어, A의 크기가 {8, 1, 7, 3, 1}이고, B의 크기가 {3, 6, 1}인 경우에 A가 B를 먹을 수 있는 쌍의 개수는 7가지가 있다. 8-3, 8-6, 8-1, 7-3, 7-6, 7-1, 3-1. 문제풀이 for _ in range(int(input())): ans=0 #..

[알고리즘] 백준 13706 파이썬 - 제곱근

13706번: 제곱근 첫째 줄에 양의 정수 N이 주어진다. 정수 N의 제곱근은 항상 정수이며, N의 길이는 800자리를 넘지 않는다. www.acmicpc.net 문제 정수 N이 주어졌을 때, N의 제곱근을 구하는 프로그램을 작성하시오. 문제풀이 n=int(input()) #01 low=1 high=n while 1: #02 mid=(low+high)//2 #03 if mid**2==n: print(mid) break elif mid**2>n: high=mid-1 else: low=mid+1 - #01 : 함수를 사용해 쉽게 풀 수도 있지만, 문제의 의도대로 이분탐색으로 풀었다. - #02 : low와 high의 중간값인 mid를 정의한다. - #03 : 만약 mid의 제곱이 n과 같다면 mid를 출력하..