绝了场上居然没做这一题

题目大意:给你一个数$x=\Pi_{i=1}^{n}a_i!$。

你需要将x表示为$x=\Pi_{i=1}^{m}(c_i!)^{d_i}p$

满足$p$无法再分解,且$(c_1,d_1,c_2,d_2,...,c_m,d_m)$的字典序最大。

数据范围:$1≤n,a_i≤10^5$。

我们考虑预处理出$10^5$内的质数。

读入数列$a$后,我们对数列$a$进行一些处理。令$sum[i]$表示数列$a$中出现了多少个质因子$p[i]$,其中$p[i]$表示第i个质数。

然后,我们从大到小枚举$c_i$,然后再判断$d_i$是否可行。

这么搞复杂度貌似是$O(\dfrac{n^2}{\ln\ n})$的,然而实际上它跑得飞快?

 #include<bits/stdc++.h>
#define M 100010
#define L long long
using namespace std; int pri[M]={},las[M]={},id[M]={},use=;
void init(){
for(int i=;i<M;i++){
if(!las[i]) id[pri[++use]=i]=use,las[i]=;
for(int j=;j<=use&&i*pri[j]<M;j++){
las[i*pri[j]]=i;
if(i%pri[j]==) break;
}
}
} L a[M]={},sum[M]={},now[M]={};
int ansx[M]={},ansy[M]={},cnt=,top=;
bool cmp(){
for(int i=top;i;i--)
if(sum[i]<now[i]) return ;
return ;
} int main(){
init(); top=use;
int n; scanf("%d",&n);
for(int i=n,x;i;i--) scanf("%d",&x),a[x]++;
for(int i=M-;i;i--) a[i]+=a[i+];
for(int i=M-;i;i--){
for(int j=i;j>;j=las[j]){
int p=id[j/las[j]];
sum[p]+=a[i],now[p]++;
}
}
for(int i=M-;i>;i--){
if(cmp()){
L mns=M;
for(int j=top;j;j--) if(now[j]) mns=min(mns,sum[j]/now[j]);
for(int j=top;j;j--) sum[j]-=now[j]*mns;
cnt++; ansx[cnt]=i; ansy[cnt]=mns;
}
for(int j=i;j>;j=las[j]){
int p=id[j/las[j]];
now[p]--;
}
while(top&&now[top]==) top--;
}
printf("%d\n",cnt);
for(int i=;i<=cnt;i++) printf("%d %d\n",ansx[i],ansy[i]);
}

【xsy2815】净空 大暴力的更多相关文章

  1. 大暴力——[HAOI]2012音量调节

    题目:[HAOI]2012音量调节 描述: 问题描述 一个吉他手准备参加一场演出.他不喜欢在演出时始终使用同一个音量,所以他决定每一首歌之前他都要改变一次音量.在演出开始之前,他已经做好了一个列表,里 ...

  2. BZOJ 1800: [Ahoi2009]fly 飞行棋【思维题,n^4大暴力】

    1800: [Ahoi2009]fly 飞行棋 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1689  Solved: 1335[Submit][St ...

  3. 牛客网 暑期ACM多校训练营(第二场)J.farm-STL(vector)+二维树状数组区间更新、单点查询 or 大暴力?

    开心.jpg J.farm 先解释一下题意,题意就是一个n*m的矩形区域,每个点代表一个植物,然后不同的植物对应不同的适合的肥料k,如果植物被撒上不适合的肥料就会死掉.然后题目将每个点适合的肥料种类( ...

  4. bzoj 3489: A simple rmq problem k-d树思想大暴力

    3489: A simple rmq problem Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 551  Solved: 170[Submit][ ...

  5. Vijos P1786 质因数分解【暴力】

    质因数分解 背景 NOIP2012普及组第一题 描述 已知正整数n是两个不同的质数的乘积试求出较大的那个质数. 格式 输入格式 输入只有一行包含一个正整数n. 输出格式 输出只有一行包含一个正整数p, ...

  6. CDOJ 1292 卿学姐种花 暴力 分块 线段树

    卿学姐种花 题目连接: http://acm.uestc.edu.cn/#/problem/show/1292 Description 众所周知,在喵哈哈村,有一个温柔善良的卿学姐. 卿学姐喜欢和她一 ...

  7. [OpenJudge8786][暴力DP]方格取数

    方格取数 总时间限制: 1000ms 内存限制: 65536kB [描述] 设有N*N的方格图(N<=10),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字0.如下图所示(见样例): ...

  8. 美团2018年CodeM大赛-资格赛 分数 暴力模拟

    链接:https://www.nowcoder.com/acm/contest/138/D来源:牛客网 小胖参加了人生中最重要的比赛——MedoC资格赛.MedoC的资格赛由m轮构成,使用常见的“加权 ...

  9. thusc2016游记&&滚粗记&&酱油记

    #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs.com/w ...

随机推荐

  1. linux vi操作

    1.“i”键,进入编辑状态.可以看到命令的下方出现了“--INSERT--”字样,表示成功进入了编辑模式; 2.“Esc”键,退出编辑模式.并在此时输入“:wq”以退出并保存

  2. hdu-1033(格式)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1033 参考文章:https://blog.csdn.net/curson_/article/detai ...

  3. Codeforces Round #524 (Div. 2) F. Katya and Segments Sets(主席树)

    https://codeforces.com/contest/1080/problem/F 题意 有k个区间,区间的种类有n种,有m个询问(n,m<=1e5,k<=3e5),每次询问a,b ...

  4. 详细解读 :java.sql.SQLException: Connection is read-only. Queries leading to data modification are not allowed,Java报错之Connection is read-only.

    问题分析: 实际开发项目中,进行insert的时候,产生这个问题是Spring框架的一个安全权限保护方法,对于方法调用的事物保护,一般配置如下: <!-- 事务管理 属性 --> < ...

  5. 在window平台下,自己DIY编译OpenSSL,Libcurl ,来支持HTTPS传输协议

    1 缘起 原来就了解些libcurl,一直没有机会在项目实际使用libcurl.   恰好最近一个云存储的项目,服务器使用openstack 恰好我负责现在的一个云存储SDK c++版本的开发中. 与 ...

  6. python基于matplotlib绘图

    import math import numpy as np import matplotlib.pyplot as plt from matplotlib.font_manager import F ...

  7. 20169207《Linux内核原理及分析》第十三周作业

    第一周作业::对Linux的基本知识进行了了解,并对基本操作进行熟悉和应用. 第二周作业::了解了冯诺依曼体系结构.各种寄存器的功能和汇编指令的作用和功能. 第三周作业::这周主要了解了Linux系统 ...

  8. Hbase_shell操作

    创建表 create 'user_action_table', 'action_log', 'action'-- 执行结果=> Hbase::Table - m_table 描述表信息 desc ...

  9. nginx 常见错误释义

    错误信息 错误说明 "upstream prematurely(过早的) closed connection" 请求uri的时候出现的异常,是由于upstream还未返回应答给用户 ...

  10. 类库中使用WPF 资源文件

    1.类库的 后缀.csproj文件,第一个<PropertyGroup>中加入下面代码 <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-b ...