题意: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(找规律+大数)的更多相关文章

  1. UVA 10254 - The Priest Mathematician (dp | 汉诺塔 | 找规律 | 大数)

    本文出自   http://blog.csdn.net/shuangde800 题目点击打开链接 题意: 汉诺塔游戏请看 百度百科 正常的汉诺塔游戏是只有3个柱子,并且如果有n个圆盘,至少需要2^n- ...

  2. HDOJ-1041 Computer Transformation(找规律+大数运算)

    http://acm.hdu.edu.cn/showproblem.php?pid=1041 有一个初始只有一个1的串 每次都按①0 -> 10;②1 -> 01;这两条规则进行替换 形如 ...

  3. HDU 1041 Computer Transformation(找规律加大数乘)

    主要还是找规律,然后大数相乘 #include<stdio.h> #include<string.h> #include<math.h> #include<t ...

  4. hdu 5047 大数找规律

    http://acm.hdu.edu.cn/showproblem.php?pid=5047 找规律 信kuangbin,能AC #include <stdio.h> #include & ...

  5. vijos - P1447开关灯泡 (大数模板 + 找规律 + 全然数 + python)

    P1447开关灯泡 Accepted 标签:CSC WorkGroup III[显示标签] 描写叙述 一个房间里有n盏灯泡.一開始都是熄着的,有1到n个时刻.每一个时刻i,我们会将i的倍数的灯泡改变状 ...

  6. UVALive 6270 Edge Case(找规律,大数相加)

    版权声明:本文为博主原创文章,未经博主同意不得转载. vasttian https://blog.csdn.net/u012860063/article/details/36905379 转载请注明出 ...

  7. 2018 ACM-ICPC 焦作区域赛 E Resistors in Parallel

    Resistors in Parallel Gym - 102028E 吐槽一下,网上搜索的题解一上来都是找规律,对于我这种对数论不敏感的人来说,看这种题解太难受了,找规律不失为一种好做法,但是题解仅 ...

  8. HDU 4919 Exclusive or (数论 or 打表找规律)

    Exclusive or 题目链接: http://acm.hust.edu.cn/vjudge/contest/121336#problem/J Description Given n, find ...

  9. E - Fibonacci Again(找规律)

    逐渐发现找规律的美妙之处啦,真不错,用普通方法解决很久或者很麻烦的问题,找到规律就很方便,算法最主要还是思想 Description There are another kind of Fibonac ...

随机推荐

  1. nginx静态页面镜像

    user root; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #error_lo ...

  2. 用itext生成PDF报错:Font 'STSong-Light1' with 'UniGB-UCS2-H' is not recognized.

    用itext生成PDF报错,加上try catch捕获到异常是 BaseFont bFont = BaseFont.createFont("STSong-Light1", &quo ...

  3. 前端知识点回顾——Javascript篇(一)

    DOM特殊元素获取 document.documentElement //HTML标签 document.head //head标签 document.title //title标签 document ...

  4. CPU排行-台式

    此文已经于2017年11月1日更新!来源于极速空间 实际对比: intel i3-7100(双核四线程) CPU性能远超过 AMD X4 860K(四核四线程) intel i5-7500(四核四线程 ...

  5. HTTP状态码分类及异常状态码处理

    1xx:表示临时响应100:(继续)请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分101:(切换协议)请求者已要求服务器切换协议,服务器已确认并准备切换 2xx:表 ...

  6. 原生vue实现表格的编辑,包括单元格合并,拆分,删除行/列, 添加行/列

    先看效果图如下:  代码看这里: https://github.com/YalongYan/vue-table-edit

  7. 小D课堂 - 新版本微服务springcloud+Docker教程_3-07 Eureka服务注册中心配置控制台问题处理

    笔记 7.Eureka服务注册中心配置控制台问题处理     简介:讲解服务注册中心管理后台,(后续还会细讲) 问题:eureka管理后台出现一串红色字体:是警告,说明有服务上线率低 EMERGENC ...

  8. 关于java面试题

    java的优点: Java是一种跨平台,适合于分布式计算环境的面向对象编程语言. 具体来说,它具有如下特性: 简单性.面向对象.分布式.解释型.可靠.安全.平台无关.可移植.高性能.多线程.动态性等.

  9. SQL Server 时间戳与时间格式互相转换

    时间戳(Unix timestamp) 是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数. Unix时间戳不仅被使用在Unix系统.类Unix系统中,也 ...

  10. Python3.x运行Python2.x代码报错 syntax error "Missing parentheses in call to 'print'

    #另外一种错误 SyntaxError: Missing parentheses in call to 'print'. Did you mean print( 查看代码,格式如下: print &q ...