結果

問題 No.1164 GCD Products hard
ユーザー t98slidert98slider
提出日時 2021-11-11 23:09:55
言語 C++14
(gcc 12.3.0 + boost 1.83.0)
結果
CE  
(最新)
AC  
(最初)
実行時間 -
コード長 536 bytes
コンパイル時間 1,139 ms
コンパイル使用メモリ 96,556 KB
最終ジャッジ日時 2024-11-23 21:41:03
合計ジャッジ時間 1,566 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
main.cpp: In function 'int main()':
main.cpp:11:3: error: 'cin' was not declared in this scope
   11 |   cin>>A>>B>>N;
      |   ^~~
main.cpp:4:1: note: 'std::cin' is defined in header '<iostream>'; did you forget to '#include <iostream>'?
    3 | #include<atcoder/all>
  +++ |+#include <iostream>
    4 | using namespace std;
main.cpp:23:3: error: 'cout' was not declared in this scope
   23 |   cout<<ans.val()<<endl;
      |   ^~~~
main.cpp:23:3: note: 'std::cout' is defined in header '<iostream>'; did you forget to '#include <iostream>'?
main.cpp:23:20: error: 'endl' was not declared in this scope
   23 |   cout<<ans.val()<<endl;
      |                    ^~~~
main.cpp:4:1: note: 'std::endl' is defined in header '<ostream>'; did you forget to '#include <ostream>'?
    3 | #include<atcoder/all>
  +++ |+#include <ostream>
    4 | using namespace std;

ソースコード

diff #

#pragma GCC optimize ("O3","unroll-loops")
#pragma GCC target("avx512f")
#include<atcoder/all>
using namespace std;
using namespace atcoder;
using mint=static_modint<1000000007>;
using mint2=static_modint<1000000006>;

int main(){
  int A,B,N,v;
  cin>>A>>B>>N;
  A--;
  mint ans=1;
  mint2 t[B+1];
  vector<mint2> np(B+1);
  for(int i=B;i>=1;i--){
    v=B/i-A/i;
    if(np[v].val())t[i]=np[v];
    else t[i]=np[v]=mint2(v).pow(N);
    for(int j=2*i;j<=B;j+=i)t[i]-=t[j];
    ans*=mint(i).pow(t[i].val());
  }
  cout<<ans.val()<<endl;
}
0