杭电oj2047-2049、2051-2053、2056、2058
2047 阿牛的EOF牛肉串
#include<stdio.h> int main(){
int n,i;
_int64 s[];
while(~scanf("%d",&n)){
s[]=;s[]=;
for(i=;i<=n;i++){
s[i] = s[i-]* + s[i-]*;
}
printf("%I64d\n",s[n]);
} }
2048 神、上帝以及老天爷
#include<stdio.h> int main(){
int n,m,i;
_int64 s[][];
while(~scanf("%d",&n)){
while(n--){
scanf("%d",&m);
s[][] = ;s[][] = ;s[][] = ;s[][] = ;
for(i=;i<=m;i++){
s[i][] = (i-)*(s[i-][] + s[i-][]);
s[i][] = s[i-][] * i;
}
printf("%.2lf%%\n",s[m][]*100.00/s[m][]);
}
} }
转一个错排公式
错排公式推导:
当n个编号元素放在n个编号位置,元素编号与位置编号各不对应的方法数用D(n)表示,那么D(n-1)就表示n-1个编号元素放在n-1个编号位置,各不对应的方法数,其它类推.
第一步,把第n个元素放在一个位置,比如位置k,一共有n-1种方法;
第二步,放编号为k的元素,这时有两种情况:⑴把它放到位置n,那么,对于剩下的n-1个元素,由于第k个元素放到了位置n,剩下n-2个元素就有D(n-2)种方法;⑵第k个元素不把它放到位置n,这时,对于这n-1个元素,有D(n-1)种方法;
综上得到
D(n) = (n-1) [D(n-2) + D(n-1)]
---------------------
作者:程序小白_龙
来源:CSDN
原文:https://blog.csdn.net/dragon_dai_2017/article/details/70880960
版权声明:本文为博主原创文章,转载请附上博文链接!
2049 不容易系列之(4)——考新郎
#include<stdio.h> int main(){
int c,n,m,i,j;
_int64 s[],num1,num2;
s[] = ;s[] = ;
for(i=;i<;i++){
s[i] = (i-)*(s[i-] + s[i-]);
}
while(~scanf("%d",&c)){
while(c--){
scanf("%d %d",&n,&m);
j=n;num1=;num2=;
for(i=m;i>;i--){
num1 *= j;
num2 *= i;
j--;
}
printf("%I64d\n",num1/num2*s[m]);
}
} }
2051 Bitset
#include<stdio.h> int main(){
int n,i,j,s[];
while(~scanf("%d",&n)){
i=;
while(n/>=){
s[i] = n%;
i++;
n /= ;
}
s[i] = ;
for(j=i;j>=;j--){
printf("%d",s[j]);
}
printf("\n");
} }
2052 Picture
#include<stdio.h> int main(){
int n,m,i,j;
char s[][];
while(scanf("%d %d",&n,&m)!=EOF){
for(i=;i<=m+;i++){
for(j=;j<=n+;j++){
if(i== || i==m+){
s[i][j] = '-';
}else if(j== || j==n+){
s[i][j] = '|';
}else{
s[i][j] = ' ';
}
}
}
s[][] = '+';s[][n+] = '+';
s[m+][] = '+';s[m+][n+] = '+';
for(i=;i<=m+;i++){
for(j=;j<=n+;j++){
printf("%c",s[i][j]);
}
printf("\n");
}
printf("\n");
}
}
2053 Switch Game
#include<stdio.h> int main(){
int n,i,count;
while(~scanf("%d",&n)){
count = ;
for(i=;i<=n;i++){
if(n%i==){count++;}
}
if(count%==){printf("0\n");}
else{printf("1\n");}
}
}
2056 Rectangles
#include<stdio.h> void sort(double s[]){
int i,j;
double temp;
for(i=;i<;i++){
for(j=;j>i;j--){
if(s[i]>s[j]){
temp = s[i];
s[i] = s[j];
s[j] = temp;
}
}
} } int main(){
int i,j;
double x[],y[],temp;
while(~scanf("%lf %lf %lf %lf %lf %lf %lf %lf",&x[],&y[],&x[],&y[],&x[],&y[],&x[],&y[])){
if((x[]>x[]&&x[]>x[]&&x[]>x[]&&x[]>x[])||(x[]<x[]&&x[]<x[]&&x[]<x[]&&x[]<x[])||(y[]>y[]&&y[]>y[]&&y[]>y[]&&y[]>y[])||(y[]<y[]&&y[]<y[]&&y[]<y[]&&y[]<y[])){
printf("0.00\n");
}else{
sort(x);
sort(y);
printf("%.2lf\n",(x[]-x[])*(y[]-y[]));
}
}
}
2058 The sum problem
#include<stdio.h>
#include<math.h> int main(){
int n,m,i,a;
while(~scanf("%d %d",&n,&m)){
if(n==&&m==){break;}
for(i=sqrt(m*);i>;i--){
a = (m-(i-)*i/)/i;
if(a*i+i*(i-)/==m){
printf("[%d,%d]\n",a,a+i-);
}
}
printf("\n");
}
}
杭电oj2047-2049、2051-2053、2056、2058的更多相关文章
- 杭电(hdu)2053 Switch Game 水题
Switch Game Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...
- 杭电ACM题单
杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最 ...
- 杭电acm习题分类
专注于C语言编程 C Programming Practice Problems (Programming Challenges) 杭电ACM题目分类 基础题:1000.1001.1004.1005. ...
- acm入门 杭电1001题 有关溢出的考虑
最近在尝试做acm试题,刚刚是1001题就把我困住了,这是题目: Problem Description In this problem, your task is to calculate SUM( ...
- 杭电acm 1002 大数模板(一)
从杭电第一题开始A,发现做到1002就不会了,经过几天时间终于A出来了,顺便整理了一下关于大数的东西 其实这是刘汝佳老师在<算法竞赛 经典入门 第二版> 中所讲的模板,代码原封不动写上的, ...
- 杭电OJ——1198 Farm Irrigation (并查集)
畅通工程 Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇.省政府"畅通工程"的目标是使全省任何两个城镇间都可 ...
- 杭电ACM分类
杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...
- 高手看了,感觉惨不忍睹——关于“【ACM】杭电ACM题一直WA求高手看看代码”
按 被中科大软件学院二年级研究生 HCOONa 骂为“误人子弟”之后(见:<中科大的那位,敢更不要脸点么?> ),继续“误人子弟”. 问题: 题目:(感谢 王爱学志 网友对题目给出的翻译) ...
- C#利用POST实现杭电oj的AC自动机器人,AC率高达50%~~
暑假集训虽然很快乐,偶尔也会比较枯燥,,这个时候就需要自娱自乐... 然后看hdu的排行榜发现,除了一些是虚拟测评机的账号以外,有几个都是AC自动机器人 然后发现有一位作者是用网页填表然后按钮模拟,, ...
随机推荐
- 解决cmd 运行python socket怎么终止运行
在cmd里启动python写了一个socket服务端的程序,但是启动之后由于监听连接的是一个死循环 这时想终止运行,发现按ctrl+c,ctrl+z,ctrl+d都不能终止 用ctrl+break解决
- Java线程和多线程(五)——单例类中的线程安全
单例模式是最广泛使用的创建模式之一.在现实世界之中,诸如Databae的连接或者是企业信息系统(EIS)等,通常其创建都是受到限制的,应该尽量复用已存在对象而不是频繁创建销毁.为了达到这个目的,开发者 ...
- KEIL里如何实现仿真 查看输出波形
1首先打开keil软件 ,点击options 我们选择在debug 2 点击debug 红色的按钮 3 进入调试界面后 ,打开logic analysis窗口 4 打开窗口后 进入setup 4 会弹 ...
- 安测云验证有CTA问题
背景: 现在所有的app 都需要通过工信部的审核.用户不同意之前,不能联网. 那么,我怎么知道自己的应用有没有联网呢?那么多sdk ,那么多代码?我怎么测试呢? 哈哈,我们测试给的方法真的很管用. l ...
- MySQL之查询性能优化(一)
为什么查询速度会慢 通常来说,查询的生命周期大致可以按照顺序来看:从客户端,到服务器,然后在服务器上进行解析,生成执行计划,执行,并返回结果给客户端.其中“执行”可以认为是整个生命周期中最重要的阶段, ...
- DbVisualizer 解决中文乱码问题
在SQL Commander中,sql语句中如果有中文,显示是‘口口口’. 解决办法如下: 在Tools->tool Properties->General->Appearance- ...
- 《Cracking the Coding Interview》——第12章:测试——题目4
2014-04-25 00:35 题目:没有专门的测试工具,你要如何对一个网页进行压力测试? 解法:拼手速,拼电脑数量呗.快捷键+复制粘贴网址,狂搞一番.话说回来,有脚本语言的情况下,直接写个脚本来模 ...
- 最近做group assignment需要些加密的知識
需求:A給B單向發的數據需要被加密,A和B都可以看到原文.加密后,就算傳輸的過程被竊取,也無法得知數據原文.A可以是任何客戶端. 解決:常用的MD5,sha1等常用的加密算法為單向不可逆,顯然不符合需 ...
- http协议--留
1.http消息结构 *http客户端,即web浏览器,链接到服务器,向服务器发送一个http请求的目的 *http服务器,即web服务,接受请求,并向客户端发送http响应数据 http统一资源标识 ...
- Oracle 学习----:查看当前时间与Sqlserver语句不一样了
oracle:select sysdate from dual sqlserver: select getdate() ---------------------试试这个--------------- ...