有道难题.docx
- 文档编号:20782021
- 上传时间:2023-04-25
- 格式:DOCX
- 页数:25
- 大小:130.43KB
有道难题.docx
《有道难题.docx》由会员分享,可在线阅读,更多相关《有道难题.docx(25页珍藏版)》请在冰豆网上搜索。
有道难题
有道难题练习赛我的难题比赛排名提交状态统计数据提问
C:
Sibonacci
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
65536kB
描述
菲波那切数列可以用下列的式子表示:
f
(1)=1
f
(2)=1
f(n)=f(n-1)+f(n-2)(n>=3)
现在我们根据这个规则定义另一种数列命名为"辛波那切数列",它是这样定义的:
s(x)=0(x<0)
s(x)=1(0<=x<1)
s(x)=s(x-1)+s(x-3.14)(x>=1)
现在需要计算出s(x)MOD1000000007的值。
输入
第一行有一个正整数T表示有T组测试数据。
接下来T行,每行包含一个数x。
其中T<=10000,-1000.0<=x<=1000.0
输出
有T行,依次输出每组数据的结果。
样例输入
3
-1
0.667
3.15
样例输出
0
1
2
有道难题练习赛我的难题比赛排名提交状态统计数据提问
B:
Power
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
65536kB
描述
计算a的b次方对9907取模的值。
输入
第一行有一个正整数T,表示有T组测试数据。
接下来T行,每行是一组测试数据,包含两个整数a和b。
其中T<=10000,0<=a,b<2^31。
输出
有T行,依次输出每组数据的结果。
样例输入
3
12
23
34
样例输出
1
8
81
有道难题练习赛我的难题比赛排名提交状态统计数据提问
A:
A+B
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
65536kB
描述
计算a加b。
输入
一行,用空格分开的两个整数a和b。
其中0≤a,b≤10000。
输出
一个整数,为a加b的和。
样例输入
12
样例输出
3
∙提交
∙统计
∙讨论
∙提交次数:
5691
∙通过人数:
136
有道难题资格赛
(1)我的难题比赛排名提交状态统计数据提问
A:
另类的异或
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
131072kB
描述
对于普通的异或,其实是二进制的无进位的加法
这里我们定义一种另类的异或AopB,op是一个仅由^组成的字符串,如果op中包含n个^,那么AopB表示A和B之间进行n+1进制的无进位的加法。
下图展示了3^5和4^^5的计算过程
输入
第一行有一个正整数T,表示下面共有T组测试数据。
接下来T行,每行有一组测试数据,是由空格隔开的三个部分组成:
ABC
A和C是两个十进制整数,B是一个字符串,由n个^组成
1<=T<=100,0<=A,B<2^30,1<=n<=1000
输出
每个测试数据输出一行,包含一个数字,即该数据的结果,用十进制表示。
样例输入
2
3^5
4^^5
样例输出
6
6
有道难题资格赛
(1)我的难题比赛排名提交状态统计数据提问
B:
有道搜索框
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
131072kB
描述
在有道搜索框中,当输入一个或者多个字符时,搜索框会出现一定数量的提示,如下图所示:
现在给你N个单词和一些查询,请输出提示结果,为了简化这个问题,只需要输出以查询词为前缀的并且按字典序排列的最前面的8个单词,如果符合要求的单词一个也没有请只输出当前查询词。
输入
第一行是一个正整数N,表示词表中有N个单词。
接下来有N行,每行都有一个单词,注意词表中的单词可能有重复,请忽略掉重复单词。
所有的单词都由小写字母组成。
接下来的一行有一个正整数Q,表示接下来有Q个查询。
接下来Q行,每行有一个单词,表示一个查询词,所有的查询词也都是由小写字母组成,并且所有的单词以及查询的长度都不超过20,且都不为空
其中:
N<=10000,Q<=10000
输出
对于每个查询,输出一行,按顺序输出该查询词的提示结果,用空格隔开。
样例输入
10
a
ab
hello
that
those
dict
youdao
world
your
dictionary
6
bob
d
dict
dicti
yo
z
样例输出
bob
dictdictionary
dictdictionary
dictionary
youdaoyour
z
有道难题资格赛
(1)我的难题比赛排名提交状态统计数据提问
C:
最大和子序列
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
131072kB
描述
给一个整数数组A={a1,a2,…an},将这个数组首尾相接连成一个环状,它的一个子序列是指这个数组连续的一段,比如a2,a3…ak,或者an,a1…ai。
请从这个环上选取两个不重叠的非空子序列,使这两个子序列中的所有数字之和最大。
在三个样例中分别选取的子序列是:
样例一:
{a1}{a3}
样例二:
{a1}{a3}
样例三:
{a5,a1}{a3}
输入
输入的第一行包含一个正整数T(1<=T<=40),表示有T组测试数据。
接下来每个测试数据包含两行,第一行是一个正整数n(2<=n<=50000),第二行是用空格隔开的数组A的n个数,依次为a1,a2,…an(|ai|<=10000)。
输出
每组数据输出一行,包含一个数,即所求的这两个子序列的元素之和。
样例输入
3
3
1-10
4
1-11-1
5
1-11-11
样例输出
1
2
3
有道难题资格赛
(2)我的难题比赛排名提交状态统计数据提问
A:
有“道”难题
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
131072kB
描述
‘道’是中国古代哲学的重要范畴。
用以说明世界的本原、本体、规律或原理。
在不同的哲学体系中,其涵义有所不同。
老子所写的《道德经》是关于‘道’的经典著作。
道的原始涵义指道路、坦途,以后逐渐发展为道理,用以表达事物的规律性。
这一变化经历了相当长的历史过程。
《易经》中有“复自道,何其咎”(《小畜》),“履道坦坦”(《履》),“反复其道,七日来复”(《复》),都为道路之义。
《尚书•洪范》中说:
“无有作好,遵王之道;无有作恶,遵王之路。
无偏无党,王道荡荡;无党无偏,王道平平;无反无侧,王道正直”。
这里的道,已经有正确的政令、规范和法度的意思,说明“道”的概念已向抽象化发展。
----节选自有道词典()
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一。
它把每三个8Bit的字节转换为四个6Bit的字节(3*8=4*6=24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论上将要比原来的长1/3。
有道的工程师闲暇之余,将Base64编码改成了Base4编码,即把每个8Bit的字节转换成4个2Bit的字节,然后以4个字符来代替。
编码和字符的对应方案如下:
00----a
01----o
10----d
11----空格
这样,编码后的字符串就只会含有字符‘d','a','o'和空格。
例如字符y,其ASCII码是121,对应的二进制串是01111001,这样分成01111001四块后,用Base4编码后的字符串为"odo"。
有道的工程师很好奇,按照这种编码方式,编码后的字符串中含有多少个完整的dao呢?
一个完整的dao由连续的‘d','a','o'三个字符组成。
输入
第一行有一个正整数n,代表接下来有n个待编码的原串。
(1<=n<=10)
接下来有n行,每行有一个长度不超过106的原串,原串中的字符可能为ASCII码中除换行符以外的任意可见字符。
输出
共有n行,每行为一个整数k,表示输入数据中对应的原串用Base4编码后含有多少个完整的dao。
样例输入
2
样例输出
1
1
提示
Java时限是标准时限的3倍,而且对于每个输入文件都有100ms的额外IO时间
有道难题资格赛
(2)我的难题比赛排名提交状态统计数据提问
B:
有道饭团
∙查看
∙提交
∙统计
∙讨论
时间限制:
1000ms
内存限制:
131072kB
描述
有道为每位员工提供每工作日享受中午与晚上两顿餐费报销,每顿饭额度上限为X元。
为了能够用这些钱吃得更丰盛,大家纷纷组成了各种饭团,每天中午和晚上扫荡清华科技园附近各大中小饭馆。
为了使报销过程更加方便,在每个饭团吃完饭的时候,由一个人付帐拿发票,这个人在发票上写上所有饭团成员的姓名,并且拿发票回去报销。
如果平均每人的消费超过了额度上限,大家会将超出部分平均补给付帐的同事。
比如,某天中午ABCDE五人到某餐厅吃饭,消费5X+5元,由A付款,BCDE每人补给A同事1元钱,A同事拿发票可报销得5X元。
若消费5X–5元,则其他同事无需补钱,A同事拿发票直接报销得到5X–5元。
由于目前公司的人越来越多,行政MM每天处理这些发票事务非常的繁琐,现在需要你来写一个程序,拿着所有的发票信息,统计一下需要分别给每个人报销多少钱。
输入
输入第一行有一个正整数T,表示下面有T个数据。
对于每个数据,其格式如下
第一行是一个正整数X,表示每个人一顿饭的额度上限,
第二行是一个正整数S,表示饭团报销的发票总数量,
接下来S行分别是每张发票的细节:
对于每一行输入格式为
nmu1u2u3….unux
n是一个正整数,表示该张发票的饭团人数,m也是一个正整数,表示消费金额总数。
u1..un分别是该饭团的名单,ux为付款人的姓名,ux一定是u1..un中间的一员。
数据中可能会包含一周甚至更长时间的数据,所以,由于每个人在不同时间会参与不同的饭团,所以有些人的名字会出现在好几行内,这是正常现象。
其中0 输出 每个数据按照员工姓名字典序,输出分别应该给每个人报销多少钱,如果某人的报销钱数为0,则不需要输出。 请在每组数据结束之后输出一个空行。 样例输入 2 20 4 361ABCB 239ABA 488ABCDC 340BCDB 15 4 361ABCB 239ABA 488ABCDC 340BCDB 样例输出 A39 B100 C80 A30 B85 C60 有道难题资格赛 (2)我的难题比赛排名提交状态统计数据提问 C: 有道招聘 ∙查看 ∙提交 ∙统计 ∙讨论 时间限制: 1000ms 内存限制: 131072kB 描述 2010年,有道从全国各地的高校中招来了众多的优秀人才,他们各个身怀绝技,有精通Java(J)的,有用Python(P)的,有写C++(C)的,我们用0~50中的整数值分别表示51项不同的技能 招聘之后各个Team的Leader就开始了疯狂的抢人工作,HR今年给出了这样的规则: a.所有的Leader和刚入职的新员工按照HR给定的顺序站成一排,从左到右,依次编号为1~N b.每个Leader可以挑选任意名新员工 c.每个新员工只能被一个Leader挑选,且必须被一个Leader选中 d.某一个新员工如果被某一个Leader选中,那么该员工与该Leader之间的其它新员工都必须被该Leader选中 e.如果一个新员工A与某一个LeaderB之间还存在着另外一名LeaderC,那么新员工A不能被LeaderB选中的 f.一个挑选需求表示: 每个Leader选中的人中具备各个特定技能的人数不少于某一个值 现在你已经知道了新员工和Leader的排列顺序,每个新员工所具备的技能,以及每个Leader的挑选需求,请你求出可能的挑选方案数量。 请你求出当给定大家的排列顺序后可能的分组方法总数。 输入 第一行为一个正整数N,表示新员工和Leader的总数。 接下来的2到N+1行分别描述了每个人的属性。 其中第i行,描述编号为i-1的人的属性: 该行的第一个数字为一个0或者1,1表示这个人是Leader,而0表示这个人是新员工。 如果这个人是Leader的话,该行首先包含一个整数M,表示该Leader有M个挑选需求,该行接下来的2*M个数分别表示M个挑选需求,其中每连续的两个整数C,D表示一个挑选需求,即要求掌握技能C的新员工必须达到D名。 如果这个人是新员工,则该行首先包含一个整数L,表示该新员工拥有的技能数量,接下来的L个整数表示该员工拥有的各项技能。 其中 1<=N<=1000,0<=M<=51,0<=C<=50,0<=D<=N,0<=L<=51 输出 仅一个整数,表示分组方案的总数对9997取模的值。 样例输入 7 0212 012 122211 012 013 122141 0224 样例输出 3 有道难题资格赛(3)我的难题比赛排名提交状态统计数据提问 A: 选课的困惑 ∙查看 ∙提交 ∙统计 ∙讨论 时间限制: 1000ms 内存限制: 131072kB 描述 小明打算本科毕业后申请出国,不过他想申请一个好学校,所有课程的加权平均分必须达到90分及以上。 现在小明已经修完所有的必修课,他想通过修一些选修课让课程加权平均分最终达到他的要求。 一共有m门选修课可以随意选修,且他能很明确知道选修每个选修课能得到的分数,请问至少修多少门课才能达到他的要求? 假设共有k门课程,其总的加权平均分的计算方法如下: 加权平均分=(成绩1*学分1+成绩2*学分2+……成绩k*学分k)/(学分1+学分2+……学分k) 输入 第一行包含一个正整数T,表示有T组测试数据。 每个测试数据第一行包含空格隔开的两个正整数n和m,表示小明已修完了n门必修课,还有m门选修课可供选择。 接下来有n行,每行包含空格隔开的一个实数ai和一个整数bi,分别表示小明第i门课的成绩以及第i门课的学分数 接下来有m行,每行包含空格隔开的一个实数cj和一个整数dj,分别表示小明第j门选修课可以获得的预期分数以及第j门选修课的学分数。 其中: 1<=T<=100,1<=n,m<=100,0<=ai,cj<=100,1<=bi,dj<=5,所有的分数小数点后至多两位。 输出 每组测试数据输出一行,如果可以达到要求,则输出一个整数k,表示小明至少要修的选修课数目,如果小明修完所有的选修课都不可能达到要求,则输出Impossible 样例输入 2 34 80.001 40.002 20.002 90.003 88.002 92.002 100.001 34 62.001 70.001 80.001 99.002 100.002 100.002 100.002 样例输出 Impossible 3 有道难题资格赛(3)我的难题比赛排名提交状态统计数据提问 B: X星球的身份证系统 ∙查看 ∙提交 ∙统计 ∙讨论 时间限制: 1000ms 内存限制: 131072kB 描述 在X星球上的外星人和地球上一样拥有一个长N位的身份证号码,而X星球的人使用的是一种26进制身份证号码,用a~z表示。 在X星球上正在举行一次幸运者抽奖活动,X星球的政府首脑制定了一个特殊的抽奖规则,凡是身份证号码符合对称性质(回文串)的人就能够成为本次活动的幸运者。 现在你知道X星球中最大的身份证号码,希望你能够计算出最多有多少人将成为本次活动的幸运者。 输入 输入数据的第一行为一个正整数N,第二行为一个长度为N的字符串,表示已知的最大身份证号码. 其中N<=30 输出 本次活动的最大幸运人数模10000的结果. 样例输入 3 bca 样例输出 28 有道难题资格赛(3)我的难题比赛排名提交状态统计数据提问 C: 火柴游戏 ∙查看 ∙提交 ∙统计 ∙讨论 时间限制: 1000ms 内存限制: 131072kB 描述 如上图所示,我们可以用不同数量的火柴排成0~9这10个数字。 现在这个问题需要让聪明的你来计算一下,给你N根火柴,总共可以组合成多少个被M取余后结果是素数的数字。 注意,N根火柴都要用上,另外,除了0,其他数字均不能出现前导零。 输入 第一行有一个正整数T,表示有T组测试数据。 接下来T行每一行表示一组测试数据,每行包含空格隔开的两个正整数N和M。 其中: T<=20, N,M<=10000并且M*N<=1000000 输出 对于每一个测试数据,请输出一行,包含一个数,即结果对1000000007取模的值。 样例输入 4 415 204 610 620 样例输出 1 6982 1 2 ∙提交 ∙统计 ∙讨论 ∙提交次数: 7 ∙通过人数: 0 你尚未尝试此题 ©2010
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 有道 难题