만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

서로 다른 수

면접 대비

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

요약
정수 a와 b가 주어질 때 a+b, a-b, a*b, a/b, a^b와 그 순서를 바꾼 식들 중 유효한 값이 몇 가지로 겹치지 않는지 센다.
난이도

보통10점 중 4점

유형
구현, 수학, 해시맵, 완전 탐색
정답자
아직 제출이 없습니다

문제

며칠 전 앨리스는 자기 방을 정리하다가 초등학교 때 쓰던 일기를 발견했다. 그 안에서 그녀는 2+2=2⋅22 + 2 = 2 \cdot 2라는 사실에 얼마나 놀랐는지 적어 둔 기록을 보고 깜짝 놀랐다. 믿기 힘들지만, 곱셈과 덧셈이 같은 결과를 낸다!

이 기록을 보고 앨리스는 다음과 같은 문제를 떠올렸다. 정수 aa와 bb가 주어질 때, 다음 수들의 집합에 서로 다른 값이 몇 개 있는가?

a+ba + b, a−ba - b, a⋅ba \cdot b, a/ba / b, aba^b,

b+ab + a, b−ab - a, b⋅ab \cdot a, b/ab / a, bab^a.

나눗셈은 반올림 없이 계산하며, 나눗셈의 결과가 정수가 아닐 수도 있다. 이 집합의 어떤 식이 올바르지 않으면 앨리스는 그 식을 고려하지 않는다. 0으로 나누는 것과 0을 양수가 아닌 지수로 거듭제곱하는 것은 올바르지 않은 것으로 본다.

입력

입력 파일의 첫째 줄에 정수 aa와 bb가 공백으로 구분되어 주어진다 (∣a∣,∣b∣≤109|a|, |b| \le 10^9).

출력

위 집합에 있는 서로 다른 수의 개수를 출력한다.

예제2

  1. 예제 1

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

    입력
    0 1
    
    예상 출력
    3