만드는 중입니다

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

Kids Aren't Alright

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

요약
1e18 이하의 m이 주어질 때, 최대공약수가 1이고 최소공배수가 m인 양의 정수 집합의 개수를 998244353으로 나눈 나머지를 구한다.
난이도

어려움10점 중 8점

유형
정수론, 조합론, 수학, 동적 계획법
정답자
아직 제출이 없습니다

문제

믿기 어렵겠지만, 전화를 건 어떤 미친 사람이 당신의 소중한 아이를 납치했다고 주장한다. 당신은 그 말을 믿지 않는다. 당신의 아이들(아무도 없을 수도 있다)은 지금 눈앞에서 안전하게 놀고 있기 때문이다. 그래도 상황이 궁금해진 당신은 범인에게 인질을 풀어주는 대가로 무엇을 원하는지 묻는다.

지루하겠지만 납치범은 돈을 요구한다. 그냥 돈이다. 실망한 채 전화를 끊으려던 순간, 이상한 점 하나가 눈에 들어온다. 상대방은 원하는 금액을 정확히 말하지 않는다. 대신 수수께끼를 낸다.

우스꽝스럽겠지만 수수께끼는 이렇다.

"최대공약수가 1이고 최소공배수가 mm인 양의 정수들의 공집합이 아닌 집합은 몇 개인가?"

그리고 납치범은 이 수수께끼의 답을 998244353998244353으로 나눈 나머지가 상상 속 자식을 돌려받는 데 필요한 정확한 금액이라고 말한다.

당신은 한동안 이런 일에서 멀어져 있었기에 납치 시장의 시세가 궁금해진다. 물론 납치범에게 1원 한 푼 줄 생각은 없지만.

입력

입력은 한 줄이며, 정수 mm이 하나 주어진다. (1≤m≤10181 \le m \le 10^{18})

출력

요구받은 금액을 정수 하나로 출력한다.

힌트

첫 번째 예제에서 조건을 만족하는 집합은 {1,6}\{1, 6\}, {2,3}\{2, 3\}, {1,2,3}\{1, 2, 3\}, {1,2,6}\{1, 2, 6\}, {1,3,6}\{1, 3, 6\}, {2,3,6}\{2, 3, 6\}, {1,2,3,6}\{1, 2, 3, 6\}이다.

예제2

  1. 예제 1

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

    입력
    100
    
    예상 출력
    322