最后一期题目在下面啦
1
画饼
趣味题
问题描述:在一个平面上画100圆,这100个圆最多能把这个平面分为几部分?例如1个圆把一个平面分为2部分(圆内和园外);2个圆能把一个平面分为4部分。
2
接水
编程题
要求:使用C/C++解决,投稿时附件.c/.cpp文件
问题描述:
水房一共有m个水龙头,每个水龙头的供水量相等,均为每秒1。现在有n名同学准备接水,他们的接水顺序已经确定。将这些同学按接水顺序从1到n编号,i号同学的接水量为Wi。开始时,1到m号同学各占一个水龙头并同时开始接水。当某名同学j完成接水量时,下一名排队接水的同学k马上接替j同学的位置开始接水。这个换人过是瞬间完成的,且没有水的浪费。问所有人都接完水需要多少秒。
输入输出格式:
输入格式:
单组输入,第一行两个整数n和m,用一个空格隔开,分别表示接水人数和水龙头个数。(1
第二行n个整数W1,W2,W3......Wn,每两个整数之间用一个空格隔开,Wi表示i号同学的接水量。(1
输出格式:
一个整数,表示接水所需的总时间。
输入输出样例:
输入样例1:
5 3
4 4 1 2 1
输出样例1:
4
第一期答对人员名单:
第一题:
李旭东 陈佳 付兢铭 黄彦瑜 段晨 甘书诚 廖胡波 熊勉 王銮辉 郑宏雷 黄诚 喻云虎 卢海伦 盛馨怡 黄伟明 符福明 韩承志 陈凡 邵航 陈都 赵如浩
第二题:
段晨 甘书诚 王銮辉 黄诚 喻云虎 卢海伦 符福明 韩承志 陈凡 邵航 陈都 赵如浩
上期参考答案:
1、过桥
参考答案:125
先拿5个,从起点开始,走到1米处,放3个在1米处,再返回。
再拿60个,从起点开始,走到1米处,此时1米处有3个,拿起一个,身上就有60个了,1米处剩2个;从1米处走到21米处,放20个在21米处,再回到1米处,拿起1个后再回到起点。
此时1米处剩1个,21米处剩20个。最后拿60个,加上路上的21个,刚好可以过桥,一共用了125个。
2、栈
f[i]表示i个数出栈可能的总数目。
设x是最后一个出栈的,则x有n种取值。把已出栈的数字分为两部分:(1)比x大;(2)比x小。
比x小的有x-1个,出栈可能的总数目为f[x-1];比x大的有n-x个,出栈可能的总数目为f[n-x];两者又相互影响,所以一个x的取值出栈可能的总数目为f[x-1]*f[n-x];由于x有n种取值,所以sum=f[0]*f[n-1] + f[1]*f[n-2] + ... + f[n-1]*f[0];
参考代码:
#include
int n, f[30];
int main()
{
scanf("%d", &n);
f[0] = 1, f[1] = 1;
for(int i=2; i
for(int j=0; j
f[i] += f[j] * f[i-j-1];
printf("%d", f[n]);
return 0;
}
---END---
题目来源:团委素研会
小编:Mist
领取专属 10元无门槛券
私享最新 技术干货