杭电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自动机器人 然后发现有一位作者是用网页填表然后按钮模拟,, ...
随机推荐
- uniqueidentifier数据类型转换
cast(id as varchar(36))
- Alice’s Stamps HDU - 6249 (区间DP)
点击传送 Alice’s Stamps Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Othe ...
- 可以字符串string转化成list,tuple,dict的eval()方法
功能:将字符串str当成有效的表达式来求值并返回计算结果. 语法: eval(source[, globals[, locals]]) -> value 参数: source:一个Python表 ...
- 零基础学html第一天
html:超文本标记语言 unicode(UTF-8):万国码 <...>:标记标签 :空格 <br>:换行 <hr>:水平线 <p></p& ...
- 《Cracking the Coding Interview》——第8章:面向对象设计——题目3
2014-04-23 18:10 题目:设计一个点唱机. 解法:英文叫Musical Jukebox.这是点唱机么?卡拉OK么?这种题目实在是云里雾里,又没有交流的余地,我索性用一个vector来表示 ...
- python-configparser模块,xml.etree模块
操作键值对文件 #文件db格式为 [section] a = 1 b = 2 [section1] d = 3 c = 4 import configparser #获取所有节点 config = c ...
- 牛客练习赛22-E.简单数据结构1(扩展欧拉定理降幂 +树状数组)
链接:E.简单数据结构1 题意: 给一个长为n的序列,m次操作,每次操作: 1.区间加 2.对于区间,查询 ,一直到- 请注意每次的模数不同. 题解:扩展欧拉定理降幂 对一个数p取log(p)次的 ...
- 2 26requests.py
""" requests """ # import requests # reponse = requests.get("http ...
- python使用工具简介介绍
我从研究生开学以来就开始在学python,现在来简单分享下一些基本的使用命令和快捷方式 Pycharm: 运行程序 ctrl+alt+F10 删除一行ctrl+D 注释ctrl+/ 安装python所 ...
- Limeng:Individual Project: Word frequency program -BUAA Advanced Software Engineering
11061190-李孟 Implement a console application to tally the frequency of words under a directory (2 mod ...