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 回到作案现场 ...
随机推荐
- ant有什么用
内容摘要: ANT是一个基于Java的自动化脚本引擎,脚本格式为XML.除了做Java编译相关任务外,ANT还可以通过插件实现很多应用的调用. 1)ANT的基本概念: 2)ANT的安装:解包,设置路径 ...
- Link-local address
A link-local address is an Internet Protocol address that is intended only for communications within ...
- jsp----在jsp中写java代码(变量和函数方法)
<%@page import="java.text.SimpleDateFormat"%><%@page language="java" im ...
- Android(java)学习笔记139:在TextView组件中利用Html插入文字或图片
首先我们看看代码: 1.activity_main.xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...
- javascript进击(八)JSON
JSON 是存储和交换文本信息的语法.类似 XML. JSON 比 XML 更小.更快,更易解析. 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Ob ...
- MySQL5.7.12新密码登录方式及密码策略
在Centos6.6上安装MySQL5.7.12时,遇到了一个问题 安装后在/root目录下没有发现有.mysql_secret这个文件,所以没有没法按照官方文档上说的那样使用,这里记录下, 解决方式 ...
- Force removing ActivityRecord,app died, no saved state报错的理解
为什么说理解呢?出现这个问题,我的情景是,在activity里面直接起了一个Thread,线程里面进行了一个繁重的任务,当线程执行完后,这个activity也销毁了,界面显示的任务栈下面的一个活动.百 ...
- Conversion to Dalvik format failed:Unable toexecute dex: method ID not in [0, 0xffff]: 65536
关于方法数超限,Google官方给出的方案是这样的:https://developer.android.com/intl/zh-cn/tools/building/multidex.html 我也写过 ...
- onConfigurationChanged与OnCreate,究竟谁被调用的问题
在以前的版本中只要在AndroidManifest.xml文件中对activity指定android:configChanges="keyboardHidden|orientation&qu ...
- Codevs 1697 ⑨要写信
1697 ⑨要写信 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 传送门 题目描述 Description 琪露诺(冰之妖精)有操控冷气的能力.能瞬间冻结小东西,比 ...