比赛 EYOI暨SBOI暑假快乐赛4th 评测结果 AAEEEEEEEE
题目名称 选题 最终得分 20
用户昵称 00000 运行时间 1.731 s
代码语言 C++ 内存使用 4.77 MiB
提交时间 2022-06-28 11:50:39
显示代码纯文本
  1. #include<bits/stdc++.h>
  2. #define ll long long
  3. using namespace std;
  4. ll m,n,q,p,k[10005],kk=0,s[10005],h[10005],hh=0,a,b,c=1;
  5. int main(){
  6. freopen("mathproblem.in","r",stdin);
  7. freopen("mathproblem.out","w",stdout);
  8. cin>>n>>m>>q;
  9. for(int w=1;w<=sqrt(n);w++)
  10. {
  11. // if(w==1) cout<<n%w;
  12. if(n%w==0)
  13. {
  14. // cout<<w<<endl;
  15. k[++kk]=w;
  16. if(w*w!=n)
  17. k[++kk]=n/w;
  18. }
  19. }
  20. //for(int w=1;w<=kk;w++)
  21. //{
  22. // cout<<k[w]<<endl;
  23. //}
  24. ll x=0,y=1,z=1;
  25. for(int w=1;w<=kk;w++)
  26. {
  27. y=1,z=1;
  28. for(int e=n;e>n-k[w];e--)
  29. {
  30. z=z*e;
  31. }
  32. for(int e=1;e<=k[w];e++) y=y*e;
  33. x=x+z/y;
  34. }
  35. //cout<<x<<endl;
  36. for(int w=2;w<=m;w++)
  37. {
  38. if(s[w]==0)
  39. {
  40. h[++hh]=w;
  41. for(int e=2;e*w<=m;e++)
  42. {
  43. s[e*w]=1;
  44. }
  45. }
  46. }
  47. //for(int w=1;w<=hh;w++)
  48. //{
  49. // cout<<h[w]<<endl;
  50. //}
  51. for(int e=1;e<=q;e++)
  52. {
  53. cin>>a;
  54. c=1;
  55. for(int w=1;w<=a;w++)
  56. {
  57. cin>>b;
  58. c=c*h[b];
  59. }
  60. cout<<x%c<<endl;
  61. // cout<<c<<endl;
  62. }
  63.  
  64. return 0;
  65. }
  66.