아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

상근이의 아이디어

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

요약
n1부터 n2까지 각 n에 대한 2^(2^n)+1 값들 사이 모든 쌍의 최대공약수 합을 구합니다.
난이도

보통10점 중 7점

유형
정수론, 조합론
정답자
아직 제출이 없습니다

문제

상근이가 아들에게 다음 문제를 냈다.

1≤n1<n2≤1041 \le n_1 < n_2 \le 10^4을 만족하는 두 정수 n1n_1과 n2n_2가 있다. 양의 정수 전체의 집합을 N∗\mathbb{N}^*라 하고, 함수 p:N∗→N∗p:\mathbb{N}^* \rightarrow \mathbb{N}^*를 모든 n∈N∗n \in \mathbb{N}^*에 대해 p(n)=2np(n) = 2^n으로 정의한다. 이 함수로 집합 SS를 정의한다.

S(n1,n2)={p(p(n))+1∣n1≤n≤n2}S(n_1,n_2)=\left\{ p(p(n))+1 \mid n_1 \le n \le n_2 \right\}

SS의 원소로 이루어진 순서쌍의 집합도 정의한다.

T(n1,n2)={(m1,m2)∣m1,m2∈S(n1,n2), m1<m2}T(n_1,n_2)=\left\{ (m_1,m_2) \mid m_1,m_2 \in S(n_1,n_2),\ m_1 < m_2 \right\}

이제 다음 값을 정의한다.

R(n1,n2)=∑(m1,m2)∈T(n1,n2)gcd⁡(m1,m2)R(n_1,n_2)=\sum_{(m_1,m_2) \in T(n_1,n_2)} \gcd(m_1,m_2)

gcd⁡(m1,m2)\gcd(m_1,m_2)는 m1m_1과 m2m_2의 최대공약수다.

n1n_1과 n2n_2가 주어졌을 때 R(n1,n2)R(n_1,n_2)를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 두 정수 n1n_1과 n2n_2가 공백으로 구분되어 주어진다. (1≤n1<n2≤1041 \le n_1 < n_2 \le 10^4)

출력

첫째 줄에 R(n1,n2)R(n_1,n_2)의 값을 출력한다.

예제2

  1. 예제 1

    입력
    1 34
    
    예상 출력
    561
    
  2. 예제 2

    입력
    1 2
    
    예상 출력
    1