杭电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自动机器人 然后发现有一位作者是用网页填表然后按钮模拟,, ...
随机推荐
- python搭建友盟以及个推推送web服务器
一.友盟客户端demo: 由于SDK原因,新版Android Studio的Android API 28 Platform无法同步新建项目, 所以我最终选择下载android-studio-bundl ...
- 修改 cmd 字体为 Consolas
windows 下的 cmd 窗口默认的字体有点难看,长时间使用操作 node.js 有点小疲劳,可以修改注册表替换字体为 Consolas,并且可以全屏 cmd 窗口,代码如下: Windows R ...
- TouTiao开源项目 分析笔记6
1.NewsChannelBean简单类笔记 1.1.Comparable接口的实现和使用 参考文章:Comparable接口的实现和使用. 因为NewsChannelBean实现了Comparabl ...
- linux命令随身记
赋予权限命令:chmod 755 * 查询进程: ps -ef |grep abc 查看含有"abc"的活动进程 ps -ef |grep -v abc 查看不含abc的活动进程 ...
- [bzoj2733]永无乡&&[bzoj3545]Peaks
并不敢说完全会了线段树合并,只是至少知道原理写法了...还是太菜了,每天被大佬吊锤qwq 我看到的几道线段树合并都是权值线段树的合并.这个算法适用范围应该只是01线段树的. 这两道算入门题了吧... ...
- oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数
花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用oracle用 ...
- python考点
Python考点 1.Python类继承,内存管理(阿里) 答:内存管理机制包括:引用计数机制,垃圾回收机制,内存池机制 a = 1,1就是对象,a就是引用,引用a指向对象1. 2.Python装饰器 ...
- Github前端项目排名
Github前端项目排名(2016-04-04) 一.前言 近几年前端技术日新月异,从 RequireJS 到 AngularJS 再到 React,似乎每天都有新的技术诞生.而大神们总能第一时间 ...
- Javascript 属性高级写法
http://www.cnblogs.com/YuanSong/p/3899287.html
- Canvas 图形组合方式
/** * 图形组合 */ function initDemo5() { var canvas = document.getElementById("demo5"); if (!c ...