[LuoguP1221]最多因子数】的更多相关文章

[Luogu1221]最多因子数(Link) 求区间[L,R]内约数个数最多的数和它的约数个数. 这个题吧,乍一看确实不是很难,然后稍微一想,嗯,是个傻*题.这是唯一感受,不要问我为什么. 首先我们定义一个函数\(F(X)\)表示\(X\)的约数个数.题目要求求出\([L,R]\)中的\(F(X)max\)和这个数.首先最基本我们要知道每一个数\(Data[i]\)都一个基本性质: \(Data[i] = Prime_1^{M_1} \times Prime_2^{M_2} \times ...…
题目传送门 最多因子数 目描述 数学家们喜欢各种类型的有奇怪特性的数.例如,他们认为945是一个有趣的数,因为它是第一个所有约数之和大于本身的奇数. 为了帮助他们寻找有趣的数,你将写一个程序扫描一定范围内的数,并确定在此范围内约数个数最多的那个数.不幸的是,这个数和给定的范围的都比较大,用简单的方法寻找可能需要较多的运行时间.所以请确定你的算法能在几秒内完成最大范围内的扫描. 输入输出格式 输入格式: 只有一行,给出扫描的范围,由下界L和上界U确定.满足2≤L≤U≤1000000000. 输出格…
今天学习动态规划01背包问题,从一篇非常不错的文章中学习甚多.转载于此,感谢作者的分享! 原文地址 通过金矿模型介绍动态规划 对于动态规划,每个刚接触的人都需要一段时间来理解,特别是第一次接触的时候总是想不通为什么这种方法可行,这篇文章就是为了帮助大家理解动态规划,并通过讲解基本的01背包问题来引导读者如何去思考动态规划.本文力求通俗易懂,无异性,不让读者感到迷惑,引导读者去思考,所以如果你在阅读中发现有不通顺的地方,让你产生错误理解的地方,让你难得读懂的地方,请跟贴指出,谢谢! ----第一节…
题意:有很多棍子,从棍子中选出两个棍子集合,使他们的和相等,求能取得的最多棍子数. 解法:容易看出有一个多阶段决策的过程,对于每个棍子,我们有 可以不选,或是选在第一个集合,或是选在第二个集合 这三种决策.因为两个集合最后的和要相等,那么令一个集合为正,另一个为负,那么最后和为0,我们用偏移0的量来作为状态之一. dp[i][j]表示前 i 个 偏移量为 j 的最大棍子数,因为每根棍最长为200,所以偏移量最多为+-20000,所以在+-20000之间枚举,最多100*40000 代码: #in…
//最优二叉树 #include <iostream> #include <iomanip> using namespace std; //定义结点类型 //[weight | lchid | rchild | parent] //为了判定一个结点是否已加入到要建立的哈夫曼树中 //可通过parent域的值来确定. //初始时parent = -1,当结点加入到树中时,该结点parent的值 //为其父亲结点在数组Huffman中的序号. template<typename…
取石子(二) 时间限制:3000 ms  |  内存限制:65535 KB 难度:5 描述 小王喜欢与同事玩一些小游戏,今天他们选择了玩取石子. 游戏规则如下:共有N堆石子,已知每堆中石子的数量,并且规定好每堆石子最多可以取的石子数(最少取1颗). 两个人轮流取子,每次只能选择N堆石子中的一堆,取一定数量的石子(最少取一个),并且取的石子数量不能多于该堆石子规定好的最多取子数,等哪个人无法取子时就表示此人输掉了游戏. 假设每次都是小王先取石子,并且游戏双方都绝对聪明,现在给你石子的堆数.每堆石子…
Description windy有 N 条木板需要被粉刷. 每条木板被分为 M 个格子. 每个格子要被刷成红色或蓝色. windy每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色. 每个格子最多只能被粉刷一次. 如果windy只能粉刷 T 次,他最多能正确粉刷多少格子? 一个格子如果未被粉刷或者被粉刷错颜色,就算错误粉刷. Input 输入文件paint.in第一行包含三个整数,N M T. 接下来有N行,每行一个长度为M的字符串,'0'表示红色,'1'表示蓝色. Output 输…
cdoevs 3100 蜗牛  时间限制: 1 s  空间限制: 32000 KB  题目等级 : 黄金 Gold 题目描述 Description 萨丽·斯内尔(Sally Snail,蜗牛)喜欢在N x N 的棋盘上闲逛(1 < n <= 120).她总是从棋盘的左上角出发.棋盘上有空的格子(用“.”来表示)和B 个路障(用“#”来表示).萨丽总是垂直(向上或者向下)或水平(向左或者向右)地走.她可以从出发地(总是记 作A1 )向下或者向右走.一旦萨丽选定了一个方向,她就会一直走下去.如果…
T1.最多因子数(divisors) 给出范围l,r求其中约数和最大的最小整数. 非常深井冰的题目:如果特判加暴力的话分数低的可怜 AC做法要用到分解质因数和线性筛(这俩好写),然而,一个一个枚举还是不可避免的TLE了(最后一个点1,1000000000可怕). 其实考虑一下,如果n为合数且是x的约数,那么n的约数也是x的约数,所以重复计算了很多.要避免这种情况就要改dfs,在计算过程中保存最多的和最多的约数个数.(然而并不是那么好打的) T2.改造二叉树(bst) 给出n个节点的二叉树,以及每…
Problem Description 反素数就是满足对于任意i(0< i < x),都有g(i) < g(x),(g(x)是x的因子个数),则x为一个反素数.现在给你一个整数区间[a,b],请你求出该区间的x使g(x)最大. Input 第一行输入n,接下来n行测试数据 输入包括a,b, 1<=a<=b<=5000,表示闭区间[a,b]. Output 输出为一个整数,为该区间因子最多的数.如果满足条件有多个,则输出其中最小的数. Sample Input 3 2 3…