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

泉州网站建设费用山东企业网站建设公司

泉州网站建设费用,山东企业网站建设公司,电商发展趋势和未来,昌大建设总部哪里今天写了一些算法题: P1866 编号 题目描述 太郎有 N 只兔子,现在为了方便识别它们,太郎要给他们编号。兔子们向太郎表达了它们对号码的喜好,每个兔子 i 想要一个整数,介于 1 和 Mi​ 之间(可以为 1 或 Mi​&#xf…

今天写了一些算法题:

P1866 编号

题目描述

太郎有 N 只兔子,现在为了方便识别它们,太郎要给他们编号。兔子们向太郎表达了它们对号码的喜好,每个兔子 i 想要一个整数,介于 1 和 Mi​ 之间(可以为 1 或 Mi​)。当然,每个兔子的编号是不同的。现在太郎想知道一共有多少种编号的方法。

你只用输出答案对 109+7 取余的结果即可。如果这是不可能的,就输出 0。

输入格式

第一行是一个整数 N。

第二行 N 个整数 Mi​。

输出格式

一个整数,表示方案总数。

输入输出样例

输入 #1复制

2
5 8

输出 #1复制

35

说明/提示

数据范围及约定

对于全部数据,1≤N≤50,1≤Mi​≤1000。

#include<bits/stdc++.h>
using namespace std;
long long n,sum=1,a[55];
int main(){ios::sync_with_stdio(false);cin.tie(NULL);cin>>n;for(int i=0;i<n;i++){cin>>a[i];}sort(a,a+n);for(int i=0;i<n;i++){sum=sum*(a[i]-i);sum=sum%1000000007;}cout<<sum;return 0;
}

P1892 [BalticOI 2003] 团伙

#include<bits/stdc++.h>
using namespace std;
int n,m,p,q,sum=0,f[1005],a[1005],b[1005];
char c;
int find(int x){while(f[x]!=x)x=f[x];return x;
}
void add(int x,int y){x=find(x);y=find(y);if(x==y)return;f[y]=x;return;
}
int main(){ios::sync_with_stdio(false);cin.tie(NULL);cin>>n>>m;for(int i=1;i<=n;i++){f[i]=i;}for(int i=1;i<=m;i++){cin>>c>>p>>q;if(c=='F')add(p,q);else{if(a[p]==0)a[p]=find(q);else add(q,a[p]);if(a[q]==0)a[q]=find(p);else add(p,a[q]);}}for(int i=1;i<=n;i++){b[find(i)]++;}for(int i=1;i<=n;i++){if(b[i])sum++;}cout<<sum;return 0;
}

P1044 [NOIP 2003 普及组] 栈

题目背景

栈是计算机中经典的数据结构,简单的说,栈就是限制在一端进行插入删除操作的线性表。

栈有两种最重要的操作,即 pop(从栈顶弹出一个元素)和 push(将一个元素进栈)。

栈的重要性不言自明,任何一门数据结构的课程都会介绍栈。宁宁同学在复习栈的基本概念时,想到了一个书上没有讲过的问题,而他自己无法给出答案,所以需要你的帮忙。

题目描述

宁宁考虑的是这样一个问题:一个操作数序列,1,2,…,n(图示为 1 到 3 的情况),栈 A 的深度大于 n。

现在可以进行两种操作,

  1. 将一个数,从操作数序列的头端移到栈的头端(对应数据结构栈的 push 操作)
  2. 将一个数,从栈的头端移到输出序列的尾端(对应数据结构栈的 pop 操作)

使用这两种操作,由一个操作数序列就可以得到一系列的输出序列,下图所示为由 1 2 3 生成序列 2 3 1 的过程。

(原始状态如上图所示)

你的程序将对给定的 n,计算并输出由操作数序列 1,2,…,n 经过操作可能得到的输出序列的总数。

输入格式

输入文件只含一个整数 n(1≤n≤18)。

输出格式

输出文件只有一行,即可能输出序列的总数目。

输入输出样例

输入 #1复制

3

输出 #1复制

5

说明/提示

【题目来源】

NOIP 2003 普及组第三题

#include<bits/stdc++.h>
using namespace std;
long long n,a[1000];
int main(){ios::sync_with_stdio(false);cin.tie(NULL);cin>>n;a[1]=1;for(int i=2;i<=18;i++){a[i]=a[i-1]*2*(2*i-1)/(i+1);}cout<<a[n];return 0;
}

P1469 找筷子

题目描述

经过一段时间的紧张筹备,电脑小组的“RP 餐厅”终于开业了,这天,经理 LXC 接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘手的问题:筷子!

CX 小朋友找出了餐厅中所有的筷子,但遗憾的是这些筷子长短不一,而我们都知道筷子需要长度一样的才能组成一双,更麻烦的是 CX 找出来的这些筷子数量为奇数,但是巧合的是,这些筷子中只有一只筷子是落单的,其余都成双,善良的你,可以帮 CX 找出这只落单的筷子的长度吗?

输入格式

第一行是一个整数,表示筷子的数量 n。

第二行有 n 个整数,第 i 个整数表示第 i 根筷子的长度 ai​。

输出格式

输出一行一个整数表示答案。

输入输出样例

输入 #1复制

9
2 2 1 3 3 3 2 3 1

输出 #1复制

2

说明/提示

数据规模与约定
  • 对于 30% 的数据,保证 n≤105。
  • 对于 100% 的数据,保证 1≤n≤107+1,1≤ai​≤109。
提示
  • 请注意数据读入对程序效率造成的影响。
  • 请注意本题的空间限制为 4 Mb。
#include<bits/stdc++.h>
using namespace std;
int ans,n,a;
int main()
{ios::sync_with_stdio(false);cin.tie(NULL);cin>>n;for (int i=1;i<=n;i++){cin>>a;ans^=a;}printf("%d",ans);return 0;
}

P2437 蜜蜂路线

题目背景

题目描述

一只蜜蜂在下图所示的数字蜂房上爬动,已知它只能从标号小的蜂房爬到标号大的相邻蜂房,现在问你:蜜蜂从蜂房 m 开始爬到蜂房 n,m<n,有多少种爬行路线?(备注:题面有误,右上角应为 n−1)

输入格式

输入 m,n 的值

输出格式

爬行有多少种路线

输入输出样例

输入 #1复制

1 14

输出 #1复制

377

说明/提示

对于100%的数据,1≤M,N≤1000

#include<bits/stdc++.h>
using namespace std;
int n,m,len=1,a[5005]={1},b[5005]={1},c[5005]={1};
void f(){int jw=0;for(int i=0;i<len;i++){c[i]=a[i]+b[i]+jw;jw=c[i]/10;c[i]=c[i]%10;}if(jw!=0){c[len]=jw;len++;}for(int i=0;i<len;i++){a[i]=b[i];b[i]=c[i];}
}
int main(){ios::sync_with_stdio(false);cin.tie(NULL);cin>>n>>m;for(int i=3;i<=m-n+1;i++){f();}for(int i=len-1;i>=0;i--){cout<<c[i];}return 0;
}

P1255 数楼梯

题目描述

楼梯有 N 阶,上楼可以一步上一阶,也可以一步上二阶。

编一个程序,计算共有多少种不同的走法。

输入格式

一个数字,楼梯数。

输出格式

输出走的方式总数。

输入输出样例

输入 #1复制

4

输出 #1复制

5

说明/提示

  • 对于 60% 的数据,N≤50;
  • 对于 100% 的数据,1≤N≤5000。
#include<bits/stdc++.h>
using namespace std;
int n,len=1,a[5005]={1},b[5005]={1},c[5005]={1};
void f(){int jw=0;for(int i=0;i<len;i++){c[i]=a[i]+b[i]+jw;jw=c[i]/10;c[i]=c[i]%10;}if(jw!=0){c[len]=jw;len++;}for(int i=0;i<len;i++){a[i]=b[i];b[i]=c[i];}
}
int main(){ios::sync_with_stdio(false);cin.tie(NULL);cin>>n;for(int i=2;i<=n;i++)f();for(int i=len-1;i>=0;i--){cout<<c[i];}return 0;
}

 

http://www.dtcms.com/wzjs/803207.html

相关文章:

  • 营销推广有哪些公司佛山正规企业网站排名优化
  • 广州网站建设网页制作开发网站关键词优化网站推广
  • 做网站模板 优帮云电子商务网站建设规划心得
  • 盘锦建设信息网站张掖网站制作
  • 营业执照办好了就可以做网站了吗网站需求设计文档
  • 门户网站简介网站流量的转换率一般是多少
  • 淄博网站推广优化外贸网站建设公司价格
  • 如何解决网站兼容性问题网站空间服务器续费
  • 企业品牌网站建设注意事项安徽网站开发项目
  • 微网站如何做微信支付宝支付宝支付设计师导航网址
  • 建设网站后台小程序开发的发展前景
  • 创建个人网站有什么好处什么是做学院网站
  • 阳江网站建设推广东莞培训机构
  • 网站开发前端与后端源代码wordpress文章显示标签
  • 移动网站和桌面网站区别网站开发标准ppt
  • 增加网站关键词济宁市网站建设
  • 采购网站建设招标方案西安的互联网营销公司
  • vs 手机网站开发上海网站建设中心
  • 从信息化建设办公室网站个人注册公司的步骤
  • 专业网站建设组织263企业邮箱登录入口手机版
  • 建设工程挂网是在那个网站营销型网站推广方式的论文
  • 海北网站建设热狗网站关键词优化
  • 网站的ftp帐号海伦网站建设
  • 河北seo网站优化公司网站外网怎么做
  • 太原php网站开发装饰设计学校
  • 建立网站的正确方法建网站没有实体公司能建站吗
  • 网站推广策划方案和网站推广执行方案的区别手机抖音你做我女朋友好吗套路网站
  • 自建网站去除html信息流广告图片
  • 青海西宁制作网站公司济南营销型网站建设哪家好
  • 档案馆网站建设现状公司网站制作注意什么