Description

Solution

刚看到这种题,就想开始繁衍。。。。。。不对啊,这种东西怎么繁衍,并显示暴力加优化!
对每个数分解质因数,然后对每个因数开一个桶做,是不是很水。

怎么处理空间问题

可以动态开桶,但有一种更机智的方法。
因为如果有一个质数大于107−−−√\sqrt{10^7},那么这些质数在一个数分解质因数是最多只会出现一次,那么我们就有很多的质数不用刻意再取开一个桶了,直接用一个数组统计起来就可以了。

Code

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#define fo(i,a,b) for(i=a;i<=b;i++)
using namespace std;
typedef long long ll;
const int maxn=30007,da=10000000;
const ll mo=100000000009;
ll i,j,k,l,n,m,ans,tt;
int a[maxn],p[da],shu[da+1];
int t[4000][20],duo[4400];
bool bz[da];
ll gcd(ll x,ll y){ll o=1;while(o){o=x%y;x=y;y=o;}return x;
}
ll qs(ll x,ll y){ll z=0;if(y==0)return z;z=qs(x,y/2);z=z*2%mo;if(y%2==1)z=(z+x)%mo;return z;
}
ll qsm(ll x,ll y){ll z=1;while(y){if(y&1==1)z=qs(z,x)%mo;x=qs(x,x)%mo;y/=2;}return z;
}
ll suan(ll x,ll y){ll z=(x-y+1);return (z+x)*y/2;
}
int main(){
//  freopen("fan.in","r",stdin);fo(i,2,sqrt(da)){if(!bz[i])p[++p[0]]=i;fo(j,1,p[0]){tt=p[j]*i;if(tt>sqrt(da))break;bz[tt]=1;}}scanf("%lld",&n);ans=1;fo(i,1,n){scanf("%lld",&a[i]);ans=qs(ans,a[i]);if(ans==0){ans=ans;}ll u=a[i];fo(j,1,p[0]){if(u==1)break;if(u%p[j]==0){ll y=0;duo[j]++;while(!(u%p[j]))u=u/p[j],y++;  t[j][y]++;  }}if(u>1){if(shu[u])ans=qs(ans,qsm(u,shu[u]));shu[u]++;}}fo(i,1,p[0]){ll o=1,d=0;if(duo[i]==0)continue;fo(j,1,20){if(d==duo[i])break;o=qs(o,p[i]%mo);ans=qs(ans,qsm(o,suan(duo[i]-d-1,t[i][j]))); d+=t[i][j];}}printf("%lld",ans);
}

【NOIP模拟】腐败相关推荐

  1. NOI.AC NOIP模拟赛 第六场 游记

    NOI.AC NOIP模拟赛 第六场 游记 queen 题目大意: 在一个\(n\times n(n\le10^5)\)的棋盘上,放有\(m(m\le10^5)\)个皇后,其中每一个皇后都可以向上.下 ...

  2. 【noip模拟赛4】Matrix67的派对 暴力dfs

    [noip模拟赛4]Matrix67的派对 描述 Matrix67发现身高接近的人似乎更合得来.Matrix67举办的派对共有N(1<=N<=10)个人参加,Matrix67需要把他们安排 ...

  3. 【HHHOJ】NOIP模拟赛 捌 解题报告

    点此进入比赛 得分: \(30+30+70=130\)(弱爆了) 排名: \(Rank\ 22\) \(Rating\):\(-31\) \(T1\):[HHHOJ260]「NOIP模拟赛 捌」Dig ...

  4. 闵梓轩大佬のnoip模拟题D1 总结 2017/10/26

    背景 题目概括 T1 题面 分析 90分算法 满分算法 T2 题面 分析 部分分算法 满分算法 满分代码 T3 题面 分析 代码 总结 背景 这道题目是去年的金牌大佬闵梓轩在一年前出的一套noip模拟 ...

  5. jyzy noip模拟赛5.22-2

    不知道哪来的题 jyzy noip模拟赛5.22-2 样例输入 1 2 3 4 样例输出 0.200000000000000 数据 |a|,|b|,|c|,|d|<=1e9 很多大佬迅速想到二分 ...

  6. NOIP模拟赛csy2021/10/30

    NOIP模拟赛csy2021/10/30 比赛时间规划 赛后反思与总结 这..总的来说感觉打的很不好,根本没有状态,有一部分原因是今天来晚了,太慌,更多的还是这次题感觉很难o(╥﹏╥)o 比赛时间规划 ...

  7. NOIP模拟(10.22)T2 杆子的排列

    杆子的排列 题目背景: 10.22 NOIP模拟作业T2 分析:DP 定义状态dp[i][j][k]表示,目前枚举到第i大的数(即n - i + 1)那么显然如果这一个数放在左边,可以在左边被看到,放 ...

  8. Noip 模拟练习5

    Noip 模拟练习5 满分300,本人240.修正后300. 难度中等. 太空密码 Description 人类一直致力于探索地外文明,为此科学家们建造了一个巨大的射电望远镜 用于接收宇宙射线.一天从 ...

  9. NOIP模拟赛 四校联考 递推 + 分类讨论 + 树上期望

    NOIP 模拟题 题目名称兔子被子蚊子 源程序文件名rabbit.cpp quilt.cpp mosquito.cpp 输入文件名rabbit.in quilt.in mosquito.in 输出文件 ...

  10. 【WZOI第二次NOIP模拟赛Day1T2】世界末日 解题报告

    [WZOI第二次NOIP模拟赛Day1T2]世界末日 Problem 2 世界末日 (doomsday.pas/c/cpp) 背景 话说CWQ大牛终于打开了那扇神秘大门,但迎接他的不是什么神秘的东西, ...

最新文章

  1. 榜单|新冠病毒席卷全球,世界医疗水平大比拼
  2. 跟我学算法聚类(kmeans)
  3. Kubernetes源码分析之kubelet
  4. WebService大讲堂之Axis2(6):跨服务会话(Session)管理
  5. 革命性提升-宇宙最强的NLP预训练BERT模型(附官方代码)
  6. 大量多风格多功能后台管理模板
  7. React Native使用指南-原生模块
  8. oracle并行parallel update两张表_Oracle与并行性 parallel
  9. hadoop2.2单节点集群的搭建
  10. 如何理解高并发中的协程?协程的实现和历史
  11. Abbreviated biography of Jon Claerbout
  12. ubuntu 如何卸载qt_UBuntu14.04下安装和卸载Qt5.3.1
  13. (转)windows身份验证登入数据库 iis 无法访问数据库
  14. 2020年华工计算机应用基础随堂作业,《计算机应用基础》随堂练习-2020年华工网络教育.docx...
  15. Allied Vision相机
  16. SQL 增删改查等操作
  17. 有限差分法与有限单元法的区别
  18. 消息队列原理和应用场景总结
  19. 计算机专业应届生简历英语作文,计算机专业毕业生英文简历范文
  20. 路由器配置出现192.168.1.0 overlaps with Vlan2的解决方案

热门文章

  1. 棋盘覆盖算法java_棋盘覆盖问题(算法分析)(Java版)
  2. “速课小龙”项目冲刺4
  3. Silverlight 简介
  4. 详细介绍如何在linux中配置chisel环境
  5. 《Transformer-XL: Attentive Language ModelsBeyond a Fixed-Length Context》论文阅读笔记
  6. 【STM32】内部温度传感器示例
  7. 深夜,有关于青春散场
  8. hdu 4510(模拟)
  9. 阿里云CentOS环境之-实战docker集群swarm(十五)
  10. Xftp连接失败,解决办法