当前位置: 首页 > news >正文

杭电2041-2050

2041

这里进入递归专题了

#include<bits/stdc++.h>
#include<iostream>
//简单递归
using namespace std;
long long int M[45];
int main() {int n;M[1]=1;M[2]=1;for(int i=3;i<45;i++){M[i]=M[i-1]+M[i-2];}while(cin>>n){while(n--){int m;cin>>m;cout << M[m] << endl;}}return 0;
}

2042

#include<bits/stdc++.h>
#include<iostream>using namespace std;
//跟猴子吃桃那题一样
//起始值不一样
int main() {int n;int x,y;while(cin>>n){while(n--){cin>>x;y=3;for(int i=1;i<=x;i++){y=(y-1)*2;}cout<<y<<endl;}}return 0;
}

2043

#include<bits/stdc++.h>
#include<iostream>using namespace std;int main() {int n;cin>>n;for(int i=0;i<n;i++){string s;cin>>s;int a=0,b=0,c=0,d=0;int k;int l=s.length();if(l>=8&&l<=16){for(k=0;k<l;k++){if(s[k]>='A'&&s[k]<='Z') a=1;else if(s[k]>='a'&&s[k]<='z') b=1;else if(s[k]>='0'&&s[k]<='9') c=1;else   d=1;}if((a+b+c+d)>=3) cout << "YES" << endl;else cout << "NO"<<endl;}else cout << "NO"<<endl;}return 0;
}

2044

#include<bits/stdc++.h>
#include<iostream>using namespace std;
long long int f[55];
int main() {f[0]=1;f[1]=2;for(int i=2;i<=50;i++) {f[i]=f[i-1]+f[i-2];}int n;while(cin>>n) {while(n--){int x,y;cin>>x>>y;cout << f[y-x-1] << endl;}}return 0;
}

2045

#include<bits/stdc++.h>
#include<iostream>using namespace std;
long long int f[55];int main() {f[1]=3;f[2]=6;f[3]=6;for(int i=4;i<=50;i++){f[i]=f[i-1]+2*f[i-2];}int n;while(cin>>n){cout << f[n] << endl;}return 0;
}

2046

#include<bits/stdc++.h>
#include<iostream>using namespace std;
long long int f[55];
int main() {int n;f[1]=1;f[2]=2;for(int i=3;i<=50;i++){f[i]=f[i-1]+f[i-2];}while(cin>>n){cout << f[n] << endl;}return 0;
}

2047

#include<bits/stdc++.h>
#include<iostream>using namespace std;
long long int f[45];
//这种递归从结尾开始数比较好一些
int main() {f[1]=3;f[2]=8;for(int i=3;i<=45;i++){f[i]=2*f[i-1]+f[i-2]*2;}int n;while(cin>>n){cout << f[n] << endl;}return 0;
}

2048

#include<bits/stdc++.h>
#include<iostream>
//这个得用long long int,不然会爆
using namespace std;
long long int f[22];
int main() {f[1]=0;f[2]=1;for(int i=3;i<=21;i++){f[i]=(i-1)*(f[i-1]+f[i-2]);}int n;cin>>n;while(n--){int x;long long int q=1;cin>>x;for(int i=1;i<=x;i++){q*=i;}printf("%.2lf%%\n",(double)f[x]/q*(100.0));}return 0;
}

2049

这个题目中组合数的实现方式值得我们借鉴

#include<bits/stdc++.h>
#include<iostream>using namespace std;
//错排公式的应用
long long int f[25];
int main() {f[1]=0;f[2]=1;for(int i=3;i<=25;i++){f[i]=(i-1)*(f[i-1]+f[i-2]);}int t;cin>>t;//错排公式while(t--){int n,m;cin>>n>>m;//组合数Cmnlong long int ans=1;for(int i=0;i<m;i++){ans*=(n-i);}for(int i=0;i<m;i++){ans/=(i+1);}//cout << ans << endl;cout<<ans*f[m]<<endl;}return 0;
}

2050

划分空间问题

#include<bits/stdc++.h>
#include<iostream>using namespace std;
//划分空间问题
long long int f[10010];
int main() {f[1]=2;for(int i=2;i<=10000;i++){f[i]=f[i-1]+4*(i-1)+1;}int n;cin>>n;while(n--){int x;cin>>x;cout<<f[x]<<endl;}return 0;
}

http://www.lryc.cn/news/455318.html

相关文章:

  • Ambari搭建Hadoop集群 — — 问题总结
  • 如何用python抓取豆瓣电影TOP250
  • 鸽笼原理与递归 - 离散数学系列(四)
  • Ubuntu 20.04常见配置(含yum源替换、桌面安装、防火墙设置、ntp配置)
  • AI学习指南深度学习篇-生成对抗网络的基本原理
  • 什么是网络安全
  • Redis list 类型
  • Linux更改固定IP地址
  • Qt+大恒相机回调图片刷新使用方式
  • Docker 环境下 PostgreSQL 监控实战:从 Exporter 到 Prometheus 的部署详解
  • 构建带有调试符号的srsRAN 4G
  • 算法题总结(十)——二叉树上
  • 【MySQL】MySQL 数据库主从复制详解
  • 一种格式化printf hex 数据的方法
  • 在LabVIEW中如何读取EXCEL
  • 布匹瑕疵检测数据集 4类 2800张 布料缺陷 带标注 voc yolo
  • 灵动微高集成度电机MCU单片机
  • 陪护小程序|护理陪护系统|陪护小程序成品
  • 【JVM】基础篇
  • 软件测试工程师 朝哪里进阶?
  • Obsidian Plugin Release Pre-check
  • Unity中实现预制体自动巡逻与攻击敌人的完整实现指南
  • OpenJudge | Shortest Prefixes
  • 速盾:高防服务器是如何防御CC攻击的?
  • Android阶段学习思维导图
  • React生命周期案例详解
  • 【ubuntu】ubuntu20.04安装显卡驱动
  • Mongo Java Driver使用getCollection做分页查询遇到的一些坑
  • RK3568笔记六十四:SG90驱动测试
  • 31 基于51单片机的水位监测系统仿真