分完了队伍:我 littleyellow and c风(无形装b.....最为致命Orz)

BNU ACM校队时间安排表

Time Limit: 1000ms
Memory Limit: 65536KB

64-bit integer IO format: %lld      Java class name: Main

Submit Status PID: 29377

ICPC,全称国际大学生程序设计竞赛,由美国计算机协会(ACM)主办。它是一项非常公平的比赛,广受世界各地大学生的喜爱。ACM每年在各大洲会举办区域赛,表现优异的学校将有资格参加世界总决赛。

ACM-ICPC自1996年踏上中国大陆,只在上海大学设立赛点。从2008年开始,每年在中国大陆有五个赛区举办区域赛。BNU也从2002年开始组建了ACM校队,通过老师和同学的不懈努力,BNU的ACM成绩也在逐年进步。

每年BNU校队都会举办一系列的培训以及比赛,吸引优秀的同学参赛(易大神牛为此还搭建了我们学校的神OJ)。校队各项活动的时间大致安排如下:

时间

活动

英文名称

11月-12月

ACM基础培训(面向全校本科生)

Basic Training

12月

新生赛(面向全校本科一年级的同学)

Rookie Contest

2月-4月

春季培训(面向全校学生)

Spring Training

4月

校赛(面向全校本科生和硕士研究生)

BNU Contest

7月

实践周(面向全校本科生)

Practice Week

7月-8月

暑期训练(面向校队)

Summer Training

9月-11月

区域赛(校队)

Regional Contest

小胖是BNU ACM校队的脑残粉,他掌握了校队各项活动的时间,同学们对校队的活动安排有什么疑问都会找他。比如昨天大钰儿问他,校队5月份有什么安排,今天浪哥问他暑假7月份要做什么,等等等等。随着想加入校队的人数越来越多,询问也越来越多,小胖就写了个程序,自动回答这些询问。

Input

输入第一行有一个整数T(1<=T<=100),表示询问的个数。

接下来有T行,每一行一个整数M(1<=M<=12),代表询问的月份M。

Output

对于每一个询问,输出若干行,表示该月的活动,每一行代表一个活动的英文名称。如果某个月有多项活动,则按照上表给出的顺序输出。如果某个月没有活动,则输出一行Unknown。

Sample Input

3
1
11
7

Sample Output

Unknown
Basic Training
Regional Contest
Practice Week
Summer Training
little yellow 写的
#include <iostream>
#include <cstring>
#include <cstdio>
#include <stdio.h>
using namespace std;int main()
{int T;while (~scanf("%d",&T)){while (T--){int M,k=0;scanf("%d",&M);if (M>=11 && M<=12){k++;printf("Basic Training\n");}if (M==12){k++;printf("Rookie Contest\n");}if (M>=2 && M<=4){k++;printf("Spring Training\n");}if (M==4){k++;printf("BNU Contest\n");}if (M==7){k++;printf("Practice Week\n");}if (M>=7 && M<=8){k++;printf("Summer Training\n");}if (M>=9 && M<=11){k++;printf("Regional Contest\n");}if (k==0) printf("Unknown\n");}}return 0;
}

B. 沙漠之旅

Time Limit: 1000ms
Memory Limit: 65536KB

64-bit integer IO format: %lld      Java class name: Main

Submit Status PID: 29376

“小胖要穿越一片沙漠,小胖开着一辆大吉普,小胖的吉普油耗高,吉普能放四桶油。”

这就是人人会唱的沙漠之歌~~体现了小胖拔群的聪明才智。

小胖的问题是这样的:现在需要驾车穿越一片沙漠,总的行驶路程为L。小胖的吉普装满油能行驶X距离,同时其后备箱最多能放下四桶油。在起点有N种汽油,每种汽油都有无限桶,一桶能行驶距离Ai。现在小胖想知道:能不能恰好带四桶油,再加上出发前装满的油,使得恰好能行驶L距离。

Input

第一行一个正整数T(1 <= T <= 50),表示数据的组数。

接下来T组数据,每组数据的第一行是三个整数L(1 <= L <= 1000),X(1 <= X <= L),N(1 <= N <= 1000)。

接下来N行,每行一个正整数Ai(1 <= Ai <= 1000),表示第i种汽油一桶能行驶的距离。

Output

对于每组数据输出一行,若能输出“Yes”,否则输出“No”

Sample Input

1
20 9 2
2
3

Sample Output

Yes
Submit Status PID: 29376
little yellow and me
思路:
完全背包 判断是否能装到l-x个空间
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;int a[1100];
bool x[1100],y[1100];
int main()
{int T;scanf("%d",&T);while(T--){int l,x1,n;memset(a,0,sizeof(a));memset(x,0,sizeof(x));memset(y,0,sizeof(y));scanf("%d%d%d",&l,&x1,&n);for (int i=0; i<n; i++){scanf("%d",&a[i]);}l=l-x1;x[0]=1;
//                                        for (int i=0; i<=l; i++)
//                                        printf("%2d ",i);
//                                        printf("\n");for (int h=0; h<4; h++){for (int i=0; i<n; i++){for (int j=l; j>=a[i]; j--){if (x[j-a[i]]==1) y[j]=1;}}
//
//                                        for (int i=0; i<=l; i++)
//                                        printf("%2d ",y[i]);
//                                        printf("\n");for (int i=0; i<=l; i++){x[i]=y[i];y[i]=0;}}if (x[l]==1) printf("Yes\n");else printf("No\n");}return 0;
}
me:
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()
{int t;scanf("%d",&t);while(t--){int a[1005]={0};bool dp[5][1005]={0};int l,x,n;int i,j,k;scanf("%d%d%d",&l,&x,&n);for(i=1;i<=n;i++)scanf("%d",&a[i]);l-=x;dp[0][0]=1;for(int i=1;i<=n;i++)//n钟油for(int j=1;j<=4;j++)//四桶for(int k=l;k>=a[i];k--)//l-x开始装{if(!dp[j][k])dp[j][k]=dp[j-1][k-a[i]];}if(dp[4][l]==true)printf("Yes\n");elseprintf("No\n");}
}

Adidas vs Adivon

Time Limit: 1000ms
Memory Limit: 65536KB

64-bit integer IO format: %lld      Java class name: Main

Submit Status PID: 29378

“我们坐在高高的土堆上面,听妈妈讲阿迪王的事情。我出生在一个不太普通的家庭,妈妈会预知术,在我小的时候,妈妈就常跟我说:‘在未来的世界,有一种叫阿迪王的东西成为比石油、黄金还重要的东西……’那时,我痴痴地听着,一听就到半夜,听到入迷,任由鼻涕流到自己的嘴里。长大后,我终于知道阿迪王是什么东西。它是对于亿万人来说比自身生命还重要的神物……”

就我所知,一双普通的阿迪王人造革鞋的日常维护费就很惊人了,有些亿万富翁购买了阿迪王的产品后因为不堪负担产品的日常维护费用而宣布个人破产。

“I'm coming!!!”

但是,Adidas这个从来没有听过的牌子居然告Adivon商标侵权了!!这是Adivon粉丝们不能容忍的!!!所以在一个夜黑风高的晚上,一位高贵的Adivon粉丝与另一位Adidas屌丝约战于华山之巅。作为21世纪的新青年,他们选择了智力对抗,来一局博弈定胜负。

他们拿出了一张长和宽都是正整数的纸片,每次,当前一方可以选择将纸片水平或竖直撕成相等的两半(平行于长边或宽边),扔掉一半。但是要求撕完后剩下的那部分纸片长和宽依旧是正整数。直到有一方不能再撕,该方即输掉这场博弈。

Adivon的粉丝那是相当大度的,所以每次都是Adidas屌丝先手。

Input

第一行一个整数N(2<=N<=2000),表示他们进行了多少局博弈。

接下来N行,每行两个正整数L和H(1<=L,H<=1000000),表示该局纸片的初始长宽。

Output

对于每一局游戏,输出一行,如果Adivon粉丝胜利则输出"Adivon prevails",否则Adivon粉丝将发动神技,改变游戏结局,此种情况输出"Adidas loses".

Sample Input

2
1 2
2 2

Sample Output

Adidas loses
Adivon prevails
Submit Status PID: 29378
思路:
太水 撕到撕不了 计算总共能撕几次
单身...偶数....
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int cnt;
int main()
{int a,b;int t;scanf("%d",&t);while(t--){scanf("%d%d",&a,&b);cnt=0;while(a%2==0){a=a/2;cnt+=1;}while(b%2==0){b=b/2;cnt+=1;}if(cnt&1)printf("Adidas loses\n");elseprintf("Adivon prevails\n");}
}

F. Taiko taiko

Time Limit: 1000ms
Memory Limit: 65536KB

64-bit integer IO format: %lld      Java class name: Main

Submit Status PID: 29140

拆拆超级喜欢太鼓达人(赛后大家可自行百度规则),玩久了也对积分规则产生了兴趣,理论上连击数越多,分数增加的越快,而且还配合着击打准确度有相应的计算规则,拆拆觉得这些规则太复杂了,于是把规则自行简化了下:

对于一段击打序列,我们假设Y为打中,N为未打中 (没有良可之分了)

我们视连续的n次击中为n连击  相应的分数为 1+2+3+。。。+n

例如序列YNNYYYNYN的总分数为1+1+2+3+1=8

当然 击中是有概率的 我们假定概率始终为P(0<=P<=1)拆拆的击中概率很高的恩恩=w=

于是现在拆拆想知道对于长度为L的序列  击中概率为P时 获得积分的期望是多少

Input

一个整数T(表示T组数据)

接下来的T组数据

接下来T行 每行一个整数L 一个浮点数P

数据范围

1<=T<=1000

1<=L<=1000

0<=P<=1

Output

对于每组数据输出一行1个6位小数 即题目描述的期望

Sample Input

2
2 0.9
3 0.5

Sample Output

2.610000
2.125000
Submit Status PID: 29140
思路:好题 比赛时候算了40多分钟才发现可以用动态做 也是醉了
1*p
1*p*p+28
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
double dp[1005];
int main()
{int t;scanf("%d",&t);while(t--){int n;double p;scanf("%d%lf",&n,&p);
//        printf("%lf%d")memset(dp,0,sizeof(dp));dp[1]=1.0*p;for(int i=2;i<=n;i++)dp[i]=(dp[i-1]+i)*p;printf("%.6lf\n",dp[n]);}
}

H. 硬币水题II

Time Limit: 1000ms
Memory Limit: 65536KB

64-bit integer IO format: %lld      Java class name: Main

Submit Status PID: 29064

小胖有一个正反面不对称的硬币。如果抛一次这个硬币,它的正面朝上的概率为p,反面朝上的概率为1-p。现在,小胖想用这个硬币来产生等概率的决策(50%对50%)。当然,只抛一次是不行的。小胖的策略是这样的:每一次决策,需要抛硬币两次,如果都是正面朝上或者都是反面朝上,那么就重新再做一次决策;如果是一正一反,那么如果第一次是正面朝上,就说抛了正面,如果第一次是反面朝上,那么就视为抛了反面。这样,就能得到一个公平的决策了。

现在问题是,给定一个p,小胖平均要抛多少次,才能得到一个决策呢(即不用再抛了)?

Input

第一行包含一个整数N(N<=100),表示测试数据的个数。

接下来包括N行,每行一个测试数据,包括一个3位的浮点数p(0<p<1)。

Output

对每一个测试数据,输出一行,包括一个浮点数,表示小胖抛硬币的平均次数。

结果保留两位小数。

Sample Input

3
0.500
0.800
0.300

Sample Output

4.00
6.25
4.76
思路:感觉好丢脸 当时还在推样例
c风一眼看出来 就是p*p的倒数吗 - - 瞬间尿了
当时我想到的方法是动态规划 规划了一个多小时没推出转移方程式
后来听说就是道模拟题 瞬间醉了
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()
{int c,n;while(~scanf("%d%d",&c,&n)){int x;int c1=c,c2,c3,c4,c5;c2=c3=c4=c5=-0xfffff;for(int i=1;i<=n;i++){scanf("%d",&x);if(c1>=x)c2=max(c2,c1-x);c3=max(c3,c2+x);//第一次消耗最小if(c3>=x)//第一次的结果c4=max(c4,c3-x);c5=max(c5,c4+x);//第二次发动消耗最小}int res1=max(c3,c5);int res2=max(c1,res1);printf("%d\n",res2);}
}
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()
{int t;scanf("%d",&t);while(t--){double a;scanf("%lf",&a);double b=1-a;printf("%.2lf\n",1.0/(a*b));}}

鸣人的查克拉

Time Limit: 1000ms
Memory Limit: 65536KB

64-bit integer IO format: %lld      Java class name: Main

Submit Status PID: 29065

《火影忍者》中,在忍者们使用忍术的时候,需要一定的查克拉(可以看成是一种体力值)。在战斗前,大家都希望提高自己的查克拉。

鸣人发明了一种忍术,可以在短时间内提高查克拉。

在使用忍术前,鸣人需要做一个仪式,这个仪式决定之后每个时刻的一个查克拉值。这些值的使用规则是:如果在某个时刻发动这个忍术,鸣人需要先消耗该时刻的查克拉值;在某个时候结束这个忍术,鸣人能获得该时刻的查克拉值(忍术必须先发动才能结束)。当然,如果某时刻鸣人具有的查克拉值少于该时刻的查克拉值,那么鸣人是不能发动该忍术的。

由于鸣人对这个忍术还不能很好地控制,所以他最多只能发动两次该忍术,并且两次忍术不能同时发动,也就是说必须结束一次忍术才能发动下一次(第一次结束时可以立即发动第二次)。

现在仪式已经做完了,鸣人知道了自己的查克拉的初始值,以及各个时刻的查克拉值,如果他最多可以发动两次该忍术(他也可以选择发动一次或者不发动),那么他最多能达到的查克拉值是多少?

Input

输入数据只有一组,第一行包括两个整数C(0<=C<=100,000)和N(N<=10,000),表示鸣人的初始查克拉值以及仪式决定的时刻的个数。

接下来有N行,第i行包含一个整数Ai (0<=ai<=100,000),表示第i个时刻的查克拉值。

Output

输出一个整数,表示鸣人在使用忍术后能到达的最大的查克拉值。

Sample Input

Sample Input1
10 5
1
2
3
2
5Sample Input2
10 2
11
13

Sample Output

Sample Output1
15Sample Output2
10
Submit Status PID: 29065
思路:题意大家一起看了4遍才懂 

(2015省赛系列--团体热身赛第二场)相关推荐

  1. 2020蓝桥杯省赛B组C++(第二场)真题

    心得体会 前面总结了很多历届的省赛真题,这次终于轮到自己上战场上体验真题啦~为此次蓝桥杯省赛也是准备了一两周时间,听说比较水,题不是很难,会暴力就能拿奖哈哈哈考完确实有点这样的感觉,但是能把五个填空题 ...

  2. 第十二届蓝桥杯省赛JavaC组【第二场】真题——详细答案对照(完整版)

    目录 #A 浮点数 #B 求余 #C 双阶乘 #D 格点 #E 整数分解 #F 3 的倍数 #G 特殊年份 #H 小平方 #I 完全平方数 #J 负载均衡 #A 浮点数 本题总分:5 分 问题描述 I ...

  3. 2018牛客网暑假ACM多校训练赛(第二场)E tree 动态规划

    原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round2-E.html 题目传送门 - 2018牛客多校赛第二场 E ...

  4. ICPC网络赛第二场G Limit

    ICPC网络赛第二场G Limit 题意: 给你数组a和b,求解: 1≤n≤100000,−100≤ai,bi≤100,0≤t≤5.1≤n≤100000,−100≤a_{i},b_{i}≤100,0≤ ...

  5. icpc网络赛第二场K Meal

    icpc网络赛第二场K Meal 题意: 有n个人,n个菜, 现在n个人轮流吃菜,起初S中有n个菜,第i个人会在还没拿走的菜中随机选一个,拿走第j个菜的概率为ai,j∑k∈Sai,k\frac{a_{ ...

  6. 蓝桥杯 省赛 python_第十一届蓝桥杯软件省级大赛第二场python3,类省赛,Python3

    试题 A: 门牌制作 本题总分:5 分 [问题描述] 小蓝要为一条街的住户制作门牌号. 这条街一共有 2020 位住户,门牌号从 1 到 2020 编号. 小蓝制作门牌的方法是先制作 0 到 9 这几 ...

  7. 算法集训队第二场考核赛_C.掌门人打桩

    原题链接:算法集训队第二场考核赛_C.掌门人打桩 C.掌门人打桩 题目背景 传说在艾泽拉斯的潘达利亚,影踪派的掌门人祝踏岚擅于打桩,有着影踪派自家的一套绝学. 题目描述 来自暴风城远征队的你拜影踪派掌 ...

  8. 蓝桥杯模拟赛第二场(web)

    文章目录 蓝桥杯模拟赛第二场(web) 1 卡片化标签页 2 随机数生成器 3 个人博客 4 学生成绩统计 5 水果摆盘 6 给页面化个妆 7 小兔子爬楼梯 8 时间管理大师 9 购物车 10 菜单树 ...

  9. 第十三届蓝桥杯大赛软件赛省赛第二场(Java 大学A组)

    蓝桥杯 2022年省赛真题 Java 大学A组 第二场 试题 A: 练习 试题 B: 超级质数 试题 C: 考勤刷卡 试题 D: 最大和 试题 E: 染色时间 试题 F: k 倍区间 试题 G: 选素 ...

  10. 2020年第十一届蓝桥杯第二场省赛B组C++题解

    2020年第十一届蓝桥杯第二场省赛B组C++题解 题单 第一题 第二题 第三题 第四题 第五题 第六题 第七题 第八题 题单 第一题 小蓝要为一条街的住户制作门牌号. 这条街一共有 2020 位住户, ...

最新文章

  1. DataFormatString格式化字符串的总结
  2. svpwm矢量控制电机相电压波形_【顺藤摸瓜】永磁同步为什么要用SVPWM控制
  3. mysql关系数据库引擎_MySQL数据库引擎详解
  4. IOS CALayer的属性和使用
  5. [05] Session概要
  6. tomcat lifecyclelistener_大公司程序员带你死磕Tomcat系列(五)——容器
  7. 手把手教你如何免费且光荣地使用专业版IntelliJ IDEA
  8. 【kafka】kafka 消息 重放 从 一个 topic 导入 另外一个 topic
  9. linux监控http连接数,zabbix监控linux tcp连接数
  10. linux qemu原理,最全的剖析QEMU原理的文章3
  11. mysql连接nacat_【mysql】使用Navicat连接数据库
  12. 蓝桥杯 算法训练 数字三角形
  13. python版本的选择
  14. 低延时极简RTMP播放器
  15. 在计算机编程里pi是什么意思,编程中的术语“钩子”是什么意思?
  16. 百度AI 开放平台 智能语音识别
  17. Python学习之路:通过分片的方式修改列表的技巧(拓展知识)
  18. m2e-wtp的作用
  19. 攻防世界-baby_web详解
  20. redis redisson 分布式锁 WRONGTYPE Operation against a key holding the wrong kind of value

热门文章

  1. 编程基础(动态内存的分配)
  2. oracle10g   RMAN增量备份策略
  3. MySQL常用语句总结
  4. 名词解释——元数据和数据字典
  5. mysql分表的原则_分库分表原则 总结
  6. 轨迹绕圈算法_算法程序解决如下问题:质点在平面坐标系中运动,每次x或者y坐标增加或减少1,如何判断质点是否顺时针质点的轨迹我们是知道的,当我们已经知道质点在绕圈运动了,那么怎么判断它是在顺时...
  7. android hal层编译,Android Hal层接入Opencv(踩坑篇)
  8. python登陆qq邮箱_python+selenium自动化测试——QQ邮箱自动登录写信
  9. linux git clone 401,Git Eclipse:401未经授权的错误
  10. mac 搭建mysql环境_Mac下MySQL环境搭建的步骤详解