ACdream训练赛系列のJava专场
/*
* this code is made by mhy12345
* Problem: 1669
* Verdict: Accepted
* Submission Date: 2015-04-21 13:39:02
* Time: 140MS
* Memory: 23196KB
*/
import java.util.*;
import java.math.*; public class Main
{
static public void main(String args[])
{
Scanner in=new Scanner(System.in);
while (in.hasNext())
{
BigInteger n=in.nextBigInteger();
BigInteger l,r,mid;
l=new BigInteger("0");
r=n.add(BigInteger.valueOf(1));
while (r.subtract(l).compareTo(BigInteger.valueOf(1))>0)
{
// System.out.println(l);
// System.out.println(r);
mid=(r.add(l)).divide(BigInteger.valueOf(2));
if (mid.multiply(mid).compareTo(n)>0)
{
r=mid;
}else
{
l=mid;
}
}
System.out.println(l.remainder(BigInteger.valueOf(2)));
}
}
}
B
/*
* this code is made by mhy12345
* Problem: 1670
* Verdict: Accepted
* Submission Date: 2015-04-21 15:01:14
* Time: 172MS
* Memory: 27336KB
*/
import java.util.*;
import java.math.*;
import java.io.File;
import java.io.IOException; public class Main
{
static public void main(String args[])throws IOException
{
Scanner in = new Scanner(System.in);
//Scanner in = new Scanner(new File("input.txt"));
while (in.hasNext())
{
BigInteger n=in.nextBigInteger();
BigInteger x=new BigInteger("1");
for (int i=2;i<=10000000;i++)
{
boolean flag=true;
for (int j=2;j<i;j++)
{
if (i%j==0)
{
flag=false;
break;
}
}
if (!flag)continue;
if (x.multiply(BigInteger.valueOf(i)).compareTo(n)>0)
break;
x=x.multiply(BigInteger.valueOf(i));
}
System.out.println(x.toString());
}
C
/*
* this code is made by mhy12345
* Problem: 1668
* Verdict: Accepted
* Submission Date: 2015-04-21 17:43:49
* Time: 992MS
* Memory: 152756KB
*/
import java.io.*;
import java.math.*;
import java.util.*; public class Main
{
static public void main(String args[])throws IOException
{
Scanner in = new Scanner(System.in);
int n;
while (in.hasNext())
{
n=in.nextInt();
int a1,b1,a2,b2,a3,b3;
a1=in.nextInt();
b1=in.nextInt();
a2=in.nextInt();
b2=in.nextInt();
a3=in.nextInt();
b3=in.nextInt();
BigDecimal v1=BigDecimal.valueOf(a1).divide(BigDecimal.valueOf(b1),100,BigDecimal.ROUND_HALF_EVEN);
BigDecimal v2=BigDecimal.valueOf(a2).divide(BigDecimal.valueOf(b2),100,BigDecimal.ROUND_HALF_EVEN);
BigDecimal v3=BigDecimal.valueOf(a3).divide(BigDecimal.valueOf(b3),100,BigDecimal.ROUND_HALF_EVEN);
BigDecimal dp[][]=new BigDecimal[110][];
for (int i=0;i<110;i++)
dp[i]=new BigDecimal[110];
for (int i=0;i<110;i++)
for (int j=0;j<110;j++)
dp[i][j]=new BigDecimal("0");
BigDecimal poss[][]=new BigDecimal[110][];
for (int i=0;i<110;i++)
poss[i]=new BigDecimal[110];
for (int i=0;i<110;i++)
for (int j=0;j<110;j++)
poss[i][j]=new BigDecimal("0");
dp[n][n]=BigDecimal.ZERO;
poss[n][n]=BigDecimal.ONE;
BigDecimal va=v1.add(v3.divide(BigDecimal.valueOf(2),100,BigDecimal.ROUND_HALF_EVEN));
BigDecimal vb=v2.add(v3.divide(BigDecimal.valueOf(2),100,BigDecimal.ROUND_HALF_EVEN));
for (int i=n;i>=1;i--)
{
for (int j=n;j>=i;j--)
{
if (j!=i && i!=1)
{
poss[i-1][j]=poss[i-1][j].add(poss[i][j].multiply(v2));
dp[i-1][j]=dp[i-1][j].add(dp[i][j].add(poss[i][j]).multiply(v2));
poss[i][j-1]=poss[i][j-1].add(poss[i][j].multiply(v3));
dp[i][j-1]=dp[i][j-1].add(dp[i][j].add(poss[i][j]).multiply(v3));
poss[i-1][j-1]=poss[i-1][j-1].add(poss[i][j].multiply(v1));
dp[i-1][j-1]=dp[i-1][j-1].add(dp[i][j].add(poss[i][j]).multiply(v1));
//System.out.println(poss[i][j-1] +" "+ poss[i][j]);
}else if (i==1 && j!=i)
{
poss[i][j-1]=poss[i][j-1].add(poss[i][j]);
dp[i][j-1]=dp[i][j-1].add(dp[i][j].add(poss[i][j]));
}else if (j==i && i!=1)
{
poss[i-1][j-1]=poss[i-1][j-1].add(poss[i][j].multiply(va));
dp[i-1][j-1]=dp[i-1][j-1].add((dp[i][j].add(poss[i][j])).multiply(va));
poss[i-1][j]=poss[i-1][j].add(poss[i][j].multiply(vb));
dp[i-1][j]=dp[i-1][j].add((dp[i][j].add(poss[i][j])).multiply(vb));
}
}
}
/*
for (int i=1;i<=n;i++)
{
for (int j=1;j<=n;j++)
{
System.out.print(dp[i][j]+" ");
}
System.out.println();
}
*/
// System.out.println(dp[1][1]);
System.out.println(dp[1][1].setScale(50, BigDecimal.ROUND_HALF_EVEN).toString());
/*
double vv1,vv2,vv3;
vv1=(double)a1/b1;
vv2=(double)a2/b2;
vv3=(double)a3/b3;
double dp[][]=new double[110][];
for (int i=0;i<110;i++)
dp[i]=new double[110];
double poss[][]=new double[110][];
for (int i=0;i<110;i++)
poss[i]=new double[110];
dp[n][n]=0;
poss[n][n]=1;
for (int i=n;i>=1;i--)
{
for (int j=n;j>=i;j--)
{
if (j!=i && i!=1)
{
//System.out.println("hehe"+i+" "+j);
poss[i-1][j]+=poss[i][j]*vv2;
dp[i-1][j]+=(dp[i][j]+poss[i][j])*vv2;
poss[i][j-1]+=poss[i][j]*vv3;
dp[i][j-1]+=(dp[i][j]+poss[i][j])*vv3;
poss[i-1][j-1]+=poss[i][j]*vv1;
dp[i-1][j-1]+=(dp[i][j]+poss[i][j])*vv1;
//System.out.println(poss[i][j-1] +" "+ poss[i][j]);
}else if (i==1 && j!=i)
{
poss[i][j-1]+=poss[i][j];
dp[i][j-1]+=dp[i][j]+poss[i][j];
}else if (j==i && i!=1)
{
poss[i-1][j-1]+=poss[i][j]*(vv1+vv3/2);
dp[i-1][j-1]+=(dp[i][j]+poss[i][j])*(vv1+vv3/2);
poss[i-1][j]+=poss[i][j]*(vv2+vv3/2);
dp[i-1][j]+=(dp[i][j]+poss[i][j])*(vv2+vv3/2);
}
}
}
for (int i=1;i<=n;i++)
{
for (int j=1;j<=n;j++)
{
System.out.print(poss[i][j]+" ");
}
System.out.println();
}
System.out.println(dp[1][1]);
//System.out.println(poss[1][1]);
*/
}
}
};
剩下两道题简直有意思。。。。。不写了。
ACdream训练赛系列のJava专场的更多相关文章
- ACdream区域赛指导赛之专题赛系列(1)の数学专场
Contest : ACdream区域赛指导赛之专题赛系列(1)の数学专场 A:EOF女神的相反数 题意:n(<=10^18)的数转化成2进制.翻转后(去掉前导零)输出十进制 思路:water ...
- 10.0.0.55_12-16训练赛部分writeup
0x1 - MISC MISC100 一张帅行的照片 目测是图片隐写,但是binwalk并没有出来,应该是对文件头进行了修改 010editor查看一下,发现在jpg文件尾之后还有大量的数据 而且在灰 ...
- Contest1592 - 2018-2019赛季多校联合新生训练赛第二场(部分题解)
Contest1592 - 2018-2019赛季多校联合新生训练赛第二场 D 10248 修建高楼(模拟优化) H 10252 组装玩具(贪心+二分) D 传送门 题干 题目描述 C 市有一条东西走 ...
- Contest1585 - 2018-2019赛季多校联合新生训练赛第一场(部分题解)
Contest1585 - 2018-2019赛季多校联合新生训练赛第一场 C 10187 查找特定的合数 D 10188 传话游戏 H 10192 扫雷游戏 C 传送门 题干: 题目描述 自然数中除 ...
- 7.30 正睿暑期集训营 A班训练赛
目录 2018.7.30 正睿暑期集训营 A班训练赛 T1 A.蔡老板分果子(Hash) T2 B.蔡老板送外卖(并查集 最小生成树) T3 C.蔡老板学数学(DP NTT) 考试代码 T2 T3 2 ...
- nyoj-1103-区域赛系列一多边形划分
http://acm.nyist.net/JudgeOnline/problem.php?pid=1103 区域赛系列一多边形划分 时间限制:1000 ms | 内存限制:65535 KB 难度: ...
- HDU6578 2019HDU多校训练赛第一场 1001 (dp)
HDU6578 2019HDU多校训练赛第一场 1001 (dp) 传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6578 题意: 你有n个空需要去填,有 ...
- HDU6579 2019HDU多校训练赛第一场1002 (线性基)
HDU6579 2019HDU多校训练赛第一场1002 (线性基) 传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6579 题意: 两种操作 1.在序列末 ...
- ACdream区域赛指导赛之手速赛系列(2)
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/DaiHaoC83E15/article/details/26187183 回到作案现场 ...
随机推荐
- 谓词(NSPredicate)
OC中的谓词操作是针对于数组类型的,他就好比数据库中的查询操作,数据源就是数组,这样的好处是我们不需要编写很多代码就可以去操作数组,同时也起到过滤的作用,我们可以编写简单的谓词语句,就可以从数组中过滤 ...
- [Form Builder]NAME_IN()与COPY()
NAME_IN和COPY实际是间接引用,类似指针传递,而不是值传递... IF :VAR1 IS NULL ... direct referenceIF NAME_IN ( :VAR1 ) IS N ...
- C++ notes for beginners(2)
作者:马 岩(Furzoom) (http://www.cnblogs.com/furzoom/)版权声明:本文的版权归作者与博客园共同所有.转载时请在明显地方注明本文的详细链接,未经作者同意请不要删 ...
- Linux常用系统调用
转载 http://www.ibm.com/developerworks/cn/linux/kernel/syscall/part1/appendix.html#icomments 按照惯例,这个列表 ...
- js数组&&字符串&&定时器2
一.系统时间对象Date 方法 描述 Date() 返回当日的日期和时间. getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31). getDay() 从 Date 对象返回一周 ...
- 前后端分离 接口管理神器——Rap本地搭建
我这里要用做mockserver的就是rap了,rap结合了团队管理,项目管理,文档编写.Mock.js.可视化.接口过渡.文档历史版本(赞).mock插件(线上线下切换就只需要注释一句代码就OK), ...
- group by order by having
- Unity3D 之3D游戏角色控制器运动
3D运动,绑定了人形控制器后的一个简单的运动方法. using UnityEngine; using System.Collections; public class PlayerMove : Mon ...
- .NET 统一用户管理 -- 统一鉴权
统一鉴权 目的 为什么要统一鉴权了,每一个业务系统几乎都离不开,用户,角色,权限 这个 3个基础功能,为了避免各个系统各自去开发一套权限管理等基础功能,也同时轻松管理每个用户的全部权限. 怎么做 ...
- CSS背景属性
CSS背景属性 1.background-attachment 属性 scroll:默认值.背景图像会随着页面其余部分的滚动而移动. fixed:当页面的其余部分滚动时,背景图像不会移动. inher ...