水题没人写题解,都直接上Java代码……那我写一个。

计蒜客题面:https://nanti.jisuanke.com/t/A2203
题意:如果i是完全平方数(>=4)的倍数,那么i号电阻的阻值为无穷大,否则为i。
现在有编号为1~n的集合,每个集合包含若干个电阻,编号为i的集合包含所有编号为i的约数的电阻。求一个集合,使该集合内所有电阻的并联阻值最小。
关键的来了:n<=10100


首先,对于一个电阻,如果它能改变总电阻,那么着它的阻值不是无穷大,因此它的每个质因子最多被乘了一次。所以对于每个电阻的集合,它的编号的约数中,只有1、质因数、以及若干个不同质因数的积是有效的。另外,如果一个数的约数包含了若干个质因数,那么这个数的约数也必然包含这些质因数的积。 这样,只要选出积不超过n的若干个质数,再加上公共约数1,就是要找的集合。

那么选取哪些质数呢?从让阻值尽量大的角度来讲,在质因子数量相同的情况下,应当选择尽量小的质数。以比较集合6和集合10为例,6=1×2×3,10=1×2×5,显然电阻5和(2×5=10)两个电阻都比3和(2×3=6)的阻值大,因此质因子5不如质因子3优。另外,由于要选的集合编号不超过n,在质因子数量相同的情况下,如果能选较大的质因子,必然能选编号较小的质因子。因此选质因子的策略为:在质因子的积不超过n的前提下,尽量选取最小的质因子,即依次选取2,3,5,7……

然后就是计算总电阻。题目给了电阻公式,此处R1,R2,R3,R4……Rk依次等于1,2,3,5……(2×3×5×……×p),其中p为最大的质因子。

上下同时乘以Rk,得到:R=Rk/(1+2+3+5+……+p+2×3+2×5+3×5+……+2×3×5+……+Rk)
分母中,对于每一个含有p的项,提取p,得:p×(1+2+3+5+……+2×3+2×5+3×5+……)+(1+2+3+5+……+2×3+2×5+3×5……)=(p+1)×(1+2+3+5+……+2×3+2×5+3×5+……)
观察发现,(p+1)的系数是不取p的情况下的分母值。那么这个分母就形成了递推式,后一项是前一项的p+1倍,第一项为1。这样用递推式求出分母,约分即可。
用欧拉筛预处理出前若干项质数,它们的积至少要超过n的最大值10100,经过验证,求出前300项质数已经足够了。
然后就是py= = Java不会(而且高精度类似乎比较糟),c++……考场手打高精度???
人生苦短,我用python。

import mathm,l=300,0
prime,a=[],[]
for i in range(0,m+1):a.append(1)
a[1]=0for i in range(2,m+1):if a[i]:prime.append(i)for j in prime:if i*j>m:breaka[i*j]=0if not i%j:breakT=int(input())
for o in range(0,T):n=int(input())h,k=1,0for i in prime:if h*i>n:breakh*=ik+=1f=[1]for i in range(1,k+1):f.append(f[i-1]*(prime[i-1]+1))g=math.gcd(h,f[k])print(h//g,end='/')print(f[k]//g)

2018 icpc 焦作站现场赛 E题题解相关推荐

  1. Icpc 焦作站现场赛 E 题解

    这道题当时做的时候推不出来,晚上去找题解,不是Java,就是Python,对于只会c/c++的萌新,哎,难受.硬着头皮看了好久,大概懂了思路,第二天自己把前天的又推了一遍发现是自己计算错误的问题,要被 ...

  2. 2018 年 ACM-ICPC 焦作站现场赛感受

    今天下午四点半,ACM-ICPC国际大学生程序设计竞赛亚洲区域赛/焦作站圆满结束.首先,感谢河南理工大学给了我们这样的一个可以与国际接轨的平台,更要感谢王老师的辛苦付出. 弱校举办这么大型的比赛实属不 ...

  3. 2016 ACM/ICPC亚洲区青岛站现场赛(部分题解)

    摘要 本文主要列举并求解了2016 ACM/ICPC亚洲区青岛站现场赛的部分真题,着重介绍了各个题目的解题思路,结合详细的AC代码,意在熟悉青岛赛区的出题策略,以备战2018青岛站现场赛. HDU 5 ...

  4. Gym 102028D Keiichi Tsuchiya the Drift King(2018 ICPC 焦作站 D 题) 计算几何

    去年暑假集训了两个月就去了焦作,这个题一直卡着到最后也没做出来,很遗憾的在人生中第一场 ICPC 比赛打了铁.当时也没有补题的习惯,这个题知道了大致做法后就放过了.今年准备银川赛区,翻出了往年的比赛真 ...

  5. 2018 ICPC焦作站 F题 Honeycomb【bfs】

    题目链接:https://codeforces.com/gym/102028/problem/F 这题就是输入处理比较恶心,先写个gets(mp[x]+1) 本地没问题,oj的编译器直接报错,真玄学, ...

  6. 2018 icpc 焦作站 自闭记

    今年三站,秦皇岛,徐州,焦作.全部打铜,心情不是一般的失落. 可能我真的只有铜牌的水平吧. 我们5题 14个小时罚时,离银牌线还差5个小时罚时. 如果我码力再强一点,F题不出bug 这里就能少3个小时 ...

  7. JSK-107305丨ICPC焦作站网赛 B丨dp

    题意: 给出n个数字,顺次取出m个数,按照给出的m个运算符,依次去运算于k.保证m个运算符都用掉,求算计算结果的最大值. 思路: 观察到m很小只有5,5x1000的复杂度是够用的,所以可以找找状态转移 ...

  8. 2018ACM-ICPC 焦作站现场赛 F. Honeycomb(BFS求最短路,卡memset)

    F. Honeycomb 从前不信命,从这道题开始,我信了. 我就是没有拿牌子的命.这道题或者说这个memset,击碎了我所有对ACM的美好记忆. #include<bits/stdc++.h& ...

  9. 2015武汉大学第八届Eming杯现场赛E题题解

    题目大意: 就是现在空间中给定球,平面和点的位置, 从点的位置作为点光源散发出光求球在平面上的投影面积. 大致思路: 本题并没有用到复杂的算法, 但是对于一些数学上的几何知识提出了一定的要求, 投影如 ...

最新文章

  1. 开发小程序商城必看:社交电商的销售玩法
  2. D~信息学/计算机专业操作
  3. 实时获取vuex更新的新数据_三网运营商大数据实时截流,网站手机号获取
  4. Scala浮点型的分类
  5. Android App列表之游标ListView(索引ListView)
  6. 基于WSAAsyncSelect模型实现的聊天室图形客户端
  7. psql: FATAL: role “appleyuchi” does not exist与修改默认密码
  8. 配置maven环境变量cmd控制台提示:mvn不是内部或外部命令,也不是可运行的程序或批处理文件...
  9. Codeforces274B
  10. 怎么在php分页上结束分页,很经典的分页程序,该如何处理
  11. CmD空格转义的三种方法,总有一种会解决问题
  12. 微信小程序实现语音识别功能
  13. 使用sourcetree 的git flow
  14. 计算机模拟求解流体力学方程,计算流体力学模拟(CFD模拟)FLUENT中的湍流模型(一)...
  15. 交易日节假日查询API接口规范
  16. Rewrite 做二级域名转向
  17. 一个app的流程分析
  18. 机器学习的前世今生:一段波澜壮阔的历史
  19. 韩国飞中国机票炒至近万元,一票难求
  20. 练习-Java类和对象之对象组合之求圆锥体表面积

热门文章

  1. linux加密文件系统
  2. i国网app苹果版_黑白直播app苹果-黑白直播苹果手机版下载
  3. btc、usdt 根据交易hash计算手续费
  4. 数据仓库系列(四)数仓架构以及多维数据模型的设计
  5. 澤火革 (易經大意 韓長庚)
  6. 实验指南:BGP路由汇聚(上)
  7. python掷骰子猜大小
  8. FAST角点检测算法(二)- 非极大值抑制筛选fast特征点
  9. 中文散步的时候,发现枫叶开始红了
  10. Python 批量获取今日头条街拍美图