Resistors in Parallel(找规律+大数)
题意:https://codeforces.com/group/ikIh7rsWAl/contest/254825/problem/E
给你一个n,计算n / Sigma(1~n)的d(是n的只出现一次的因数)。
思路:
反正就是打表找规律,3组数据也能找规律,你们是真的nb嗷。
import java.math.BigInteger;
import java.util.Scanner; public class Main{
public static void main(String[] args){
Scanner cin=new Scanner(System.in); int T=cin.nextInt();
BigInteger n1=new BigInteger("1");
BigInteger n2=new BigInteger("2");
BigInteger n3=new BigInteger("3");
BigInteger n4=new BigInteger("4");
BigInteger n5=new BigInteger("5");
BigInteger n6=new BigInteger("6");
BigInteger a[]=new BigInteger[104];
a[1]=new BigInteger("2");
a[2]=new BigInteger("3");
a[3]=new BigInteger("5");
a[4]=new BigInteger("7");
a[5]=new BigInteger("11");
a[6]=new BigInteger("13");
a[7]=new BigInteger("17");
a[8]=new BigInteger("19");
a[9]=new BigInteger("23");
a[10]=new BigInteger("29");
a[11]=new BigInteger("31");
a[12]=new BigInteger("37");
a[13]=new BigInteger("41");
a[14]=new BigInteger("43");
a[15]=new BigInteger("47");
a[16]=new BigInteger("53");
a[17]=new BigInteger("59");
a[18]=new BigInteger("61");
a[19]=new BigInteger("67");
a[20]=new BigInteger("71");
a[21]=new BigInteger("73");
a[22]=new BigInteger("79");
a[23]=new BigInteger("83");
a[24]=new BigInteger("89");
a[25]=new BigInteger("97");
a[26]=new BigInteger("101");
a[27]=new BigInteger("103");
a[28]=new BigInteger("107");
a[29]=new BigInteger("109");
a[30]=new BigInteger("113");
a[31]=new BigInteger("127");
a[32]=new BigInteger("131");
a[33]=new BigInteger("137");
a[34]=new BigInteger("139");
a[35]=new BigInteger("149");
a[36]=new BigInteger("151");
a[37]=new BigInteger("157");
a[38]=new BigInteger("163");
a[39]=new BigInteger("167");
a[40]=new BigInteger("173");
a[41]=new BigInteger("179");
a[42]=new BigInteger("181");
a[43]=new BigInteger("191");
a[44]=new BigInteger("193");
a[45]=new BigInteger("197");
a[46]=new BigInteger("199");
a[47]=new BigInteger("211");
a[48]=new BigInteger("223");
a[49]=new BigInteger("227");
a[50]=new BigInteger("229");
a[51]=new BigInteger("233");
a[52]=new BigInteger("239");
a[53]=new BigInteger("241");
a[54]=new BigInteger("251");
a[55]=new BigInteger("257");
a[56]=new BigInteger("263");
a[57]=new BigInteger("269");
a[58]=new BigInteger("271");
a[59]=new BigInteger("277");
a[60]=new BigInteger("281");
a[61]=new BigInteger("283");
a[62]=new BigInteger("293");
a[63]=new BigInteger("307");
a[64]=new BigInteger("311");
a[65]=new BigInteger("313");
a[66]=new BigInteger("317");
a[67]=new BigInteger("331");
a[68]=new BigInteger("337");
a[69]=new BigInteger("347");
a[70]=new BigInteger("349");
a[71]=new BigInteger("353");
a[72]=new BigInteger("359");
a[73]=new BigInteger("367");
a[74]=new BigInteger("373");
a[75]=new BigInteger("379");
a[76]=new BigInteger("383");
a[77]=new BigInteger("389");
a[78]=new BigInteger("397");
a[79]=new BigInteger("401");
a[80]=new BigInteger("409");
a[81]=new BigInteger("419");
a[82]=new BigInteger("421");
a[83]=new BigInteger("431");
a[84]=new BigInteger("433");
a[85]=new BigInteger("439");
a[86]=new BigInteger("443");
a[87]=new BigInteger("449");
a[88]=new BigInteger("457");
a[89]=new BigInteger("461");
a[90]=new BigInteger("463");
a[91]=new BigInteger("467");
a[92]=new BigInteger("479");
a[93]=new BigInteger("487");
a[94]=new BigInteger("491");
a[95]=new BigInteger("499");
a[96]=new BigInteger("503");
a[97]=new BigInteger("509");
a[98]=new BigInteger("521");
a[99]=new BigInteger("523");
a[100]=new BigInteger("541"); for(int i=1;i<=T;++i){
BigInteger N=cin.nextBigInteger();
int flag=N.compareTo(n6);
int cnt=0;
BigInteger A=new BigInteger("1");
BigInteger B=new BigInteger("2");
if(flag==1){
BigInteger start=new BigInteger("6");
int P=3;
for(int j=1;j<=10000;j++) {
start=start.multiply(a[P]);
if(start.compareTo(N)==1)
break;
else {
cnt++;
P++;
}
}
int PP=3;
for(int j=1;j<=cnt;j++) {
BigInteger up=a[PP];
BigInteger ttt=a[PP];
ttt=ttt.add(n1);
BigInteger down=ttt;
A=A.multiply(up);
B=B.multiply(down);
PP++;
}
BigInteger gcd=A.gcd(B);
A=A.divide(gcd);
B=B.divide(gcd);
System.out.println(A+"/"+B);
}
else{
if(N.compareTo(n1)==0)
System.out.println("1/1");
else if(N.compareTo(n2)==0)
System.out.println("2/3");
else if(N.compareTo(n3)==0)
System.out.println("2/3");
else if(N.compareTo(n4)==0)
System.out.println("2/3");
else if(N.compareTo(n5)==0)
System.out.println("2/3");
else if(N.compareTo(n6)==0)
System.out.println("1/2");
}
}
}
}
Resistors in Parallel(找规律+大数)的更多相关文章
- UVA 10254 - The Priest Mathematician (dp | 汉诺塔 | 找规律 | 大数)
本文出自 http://blog.csdn.net/shuangde800 题目点击打开链接 题意: 汉诺塔游戏请看 百度百科 正常的汉诺塔游戏是只有3个柱子,并且如果有n个圆盘,至少需要2^n- ...
- HDOJ-1041 Computer Transformation(找规律+大数运算)
http://acm.hdu.edu.cn/showproblem.php?pid=1041 有一个初始只有一个1的串 每次都按①0 -> 10;②1 -> 01;这两条规则进行替换 形如 ...
- HDU 1041 Computer Transformation(找规律加大数乘)
主要还是找规律,然后大数相乘 #include<stdio.h> #include<string.h> #include<math.h> #include<t ...
- hdu 5047 大数找规律
http://acm.hdu.edu.cn/showproblem.php?pid=5047 找规律 信kuangbin,能AC #include <stdio.h> #include & ...
- vijos - P1447开关灯泡 (大数模板 + 找规律 + 全然数 + python)
P1447开关灯泡 Accepted 标签:CSC WorkGroup III[显示标签] 描写叙述 一个房间里有n盏灯泡.一開始都是熄着的,有1到n个时刻.每一个时刻i,我们会将i的倍数的灯泡改变状 ...
- UVALive 6270 Edge Case(找规律,大数相加)
版权声明:本文为博主原创文章,未经博主同意不得转载. vasttian https://blog.csdn.net/u012860063/article/details/36905379 转载请注明出 ...
- 2018 ACM-ICPC 焦作区域赛 E Resistors in Parallel
Resistors in Parallel Gym - 102028E 吐槽一下,网上搜索的题解一上来都是找规律,对于我这种对数论不敏感的人来说,看这种题解太难受了,找规律不失为一种好做法,但是题解仅 ...
- HDU 4919 Exclusive or (数论 or 打表找规律)
Exclusive or 题目链接: http://acm.hust.edu.cn/vjudge/contest/121336#problem/J Description Given n, find ...
- E - Fibonacci Again(找规律)
逐渐发现找规律的美妙之处啦,真不错,用普通方法解决很久或者很麻烦的问题,找到规律就很方便,算法最主要还是思想 Description There are another kind of Fibonac ...
随机推荐
- vue 循环加载动态组件以及传值
今天遇到一个需求,某个页面是个动态页面,由多个子组件构成. 之前我们的做法是将N个需要的组件import进主页面,然后引用一下即可.但是现在遇到的问题是, 这个动态页面存在多个业务,有的业务需要某几个 ...
- RocketMQ使用记录
---恢复内容开始--- he following softwares are assumed installed: 64bit OS, Linux/Unix/Mac is recommended; ...
- Final阶段贡献分配规则
此次作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/10063 贡献分分配规则: 组内一共五名同学,贡献分共计50分. 1.每 ...
- Vbox中多台虚拟机搭建简单子网
一.目标拓扑结构: 要使192.168.31.1和192.168.32.1互相ping通. 二.步骤及问题: 1.路由器配置 SEED_Router配置IP并开启路由转发协议: ifconfig et ...
- 百度地图API--百度地图底色选择
可选择底色列表<select id="stylelist" onchange="changeMapStyle(this.value)"> <o ...
- Bootstrap4项目开发实战视频教程
一.企业网站项目 课件 0.课程简介 1.顶部区域的制作 2.导航区域的制作 3.轮播区域的制作 4.产品区域的制作 5.最新资讯区域的制作 6.底部区域的制作 二.化妆品网站项目 1.项目初始化_导 ...
- Twisted框架学习
Twisted是用Python实现的基于事件驱动的网络引擎框架,是python中一个强大的异步IO库.理解twisted的一个前提是弄清楚twisted中几个核心的概念: reactor, Proto ...
- Go项目的测试代码3(测试替身Test Double)
上一篇文章介绍了项目中测试代码的写法. Go项目的测试代码2(项目运用) 这里简单的共享一下测试替身. 当我们写测试代码的时候,经常遇到一个问题.跟别的模块或服务有依赖性,可是功能还没开发完.或是因为 ...
- docker 管理应用程序数据和网络管理
Volume和Bind Mount Docker提供三种不同方式将数据从宿主机挂载到容器中:volumes,bind mounts和tmpfs volumes:Docker管理宿主机文件系统的一部分( ...
- zabbix监控nginx+php-fpm,mysql+主从复制+高可用,tomcat,redis web状态
zabbix监控对象区分 使用SNMP监控交换 使用IPMI监控服务器硬件 使用Agent监控服务器 使用JMX监控JAVA SNMP监控流程 交换机上开启snmp 在zabbix上添加监控(设置SN ...