합과 곱

시간 제한2초메모리 제한128 MB

요약
합이 S이고 곱이 P인 음이 아닌 실수 리스트 중 크기가 가장 작은 것을 구하고, 존재하지 않으면 -1을 출력합니다.
난이도

보통10점 중 6점

유형
수학, 이분 탐색
정답자
아직 제출이 없습니다

문제

음이 아닌 수들로 이루어진 리스트가 있다. 리스트에 들어 있는 모든 수의 합이 S이고 곱이 P라면, 이 리스트를 조건을 만족하는 리스트라고 하자.

S와 P가 주어질 때, 조건을 만족하는 리스트가 가질 수 있는 최소 크기를 구한다. 리스트의 크기는 원소의 개수이다. 어떤 크기로도 만들 수 없다면 -1을 출력한다.

리스트의 원소는 정수가 아닐 수 있다.

입력

첫째 줄에 자연수 S와 P가 공백으로 구분되어 주어진다. 두 수는 각각 1,000,000,000 이하이다.

출력

첫째 줄에 정답을 출력한다.

예제4

  1. 예제 1

    입력
    5 6
    
    예상 출력
    2
    
  2. 예제 2

    입력
    10 10
    
    예상 출력
    1
    
  3. 예제 3

    입력
    5 100
    
    예상 출력
    -1
    
  4. 예제 4

    입력
    100 1000000000
    
    예상 출력
    9