转跳到内容

社区搜索

显示标签 ''娱乐'' 的结果,内容发布在三次元同好会。

  • 搜索标签

    用逗号隔离标签。
  • 搜索作者

内容类型


版块

  • 同盟辖区
    • 新手保护区
    • 综合事务区
    • 版主招募区
    • 活动栏
  • 文化漫谈
    • 节操の广场
    • 三次元同好会
    • 文学领地
    • 涂鸦手绘
    • 语音交流区
  • 极乐净土
  • 恋语幽境
    • Gal主题公园(交流区)
    • Gal流光殿堂(展示区)
  • 不动游星
    • 一般向游戏交流区
    • 桌游区
  • 动漫地带
    • 动漫讨论区

分类

没有结果可显示。

没有结果可显示。


从哪搜索...

查找结果拥有...


创建日期

  • 开始

    结束


最后更新

  • 开始

    结束


以量过滤...

加入

  • 开始

    结束


用户组


  1. 大家好,这里是趣味物理智力小测验现场,一起来挑战你的大脑吧(电视主持腔) 请听题! 我们都知道,英国的车辆皆在左侧行驶。那么,如果突然所有英国车辆都自右行驶了,一天,也就是地球自转一圈的时间会变长还是变短呢? (不考虑除题干外其他因素,导致的地球自转周期变更) 计时30秒,开始 。。。 当然,其实并不限时间 欢迎大家踊跃竞猜 第一个答案正确,并能够正确阐述理由的,给50节操吧 万万没想到,这贴才发了多久,就已经有正确回答了 https://sstm.moe/topic/257397-趣味物理智力小测验【第一期】/?tab=comments#comment-13407766 同盟物理学家,恐怖如斯 下面公布参考答案,愿意思考的也可以先不点开,在下面发表自己的思路 参考答案
  2. 首先,内容可能不会十分严谨,文中描述仅针对一般情况,欢迎补充与错误指出 无为的科普(本人生物系学子,并不专修生殖生理学,许多内容来源于书籍与查证): 传统手艺并不是下流的事,在合适的场合下是一种正常的行为,除了人类灵长类动物也存在这样的行为,有的人可能3-6岁就存在这样的行为了。 传统手艺多少次合适?在网上有各种各样的说法,但实际上,人类的精液可以不断在稳态维持下不断的合成,相关作案工具受到的大多是可逆的刺激伤害(或许不能称作伤害),所以,真正合适的次数应该是看你的身体状况,如果在 x之后出现类似于精神力下降,后脑勺疼,下体相关器官的空虚感时,一定要休息几天,不然可能将带来不可逆的伤害。(相关查证—— 欧阳五庆《动物生理学》 建议的极限次数为一天一次,与第二点不冲突且优先服从第二点。 关于时间是否会缩短的问题,如果服从以上三点,并不会出现不可逆的缩短,如果你觉得你时间短了,建议修养一段时间便可自然恢复。 下面是一些朋友们的误区 传统手艺能减肥?假的,虽然机体合成protein会消耗能量,而且不少,但是主要有糖分供能,所以不控制饮食等于0 有的人量极大会瘦,但是会同时消耗大量氨基酸,这会导致你的消瘦,是一个病态,实在不推荐。 多壮阳就好了?这确实有一定帮助,前提是你要控制(见1,2,3)而且我推荐你喝牛奶,更直接有效,不骗人www 传统手艺有好处? 确实。适量的手艺能缓解压力,避免前列腺疾病,降低血压(未查证),还能提升硬度。 4. 飞机杯不好?有一说一,飞机杯比你的手好一百倍,因为软,伤害小,还舒服(某些慢玩飞机杯还具有缓解早泄的功能)如果你不信软就是好,你试试用不锈钢管搞,保证起飞 如何避免过量? 运动运动运动,如果你有精力,就去运动 多和朋友呆在一起 。。。。。。。(多的是,因人而异) 最后一点:过量最大的危害在于上瘾,上瘾之后可能会对正常的sex无感觉,请自重
  3. 5月份本科毕业了,最近真的没啥事,本来打算出门旅游的结果疫情原因都取消了 最近逛qq群的时候有老哥推荐黄油,然后玩了之后一发不可收拾,又接连下载了各种黄油,连续四天撸了得有十几次 昨天睡觉前隐隐感觉蛋蛋疼痛,醒来感觉好多了,今天四个鸡蛋好好补了补 唉。。。感觉自己已经成了废人了
  4. 这段时间突然开始沉迷李荣浩无法自拔,当然是他前几年的歌,最近这段时间他的歌挺拉胯的= = 李荣浩的歌只能用上头来形容 差不多就是第一次听的时候的感想就是:什么玩意? 第二次听:感觉还行,没那么难听 三次及以上:上头! 有无也喜欢李荣浩的老哥呢
  5. 啊! 海军 中一个让我很不理解的梗飞快的在网络中蹿红,‘好!你很精神’吸引了我去看了一遍这部国内引进后的中文版电影。 说实话,没有字幕的老电影看上去真的很费劲,尤其是配音时不时爆裂导致我我跟不就做不到听清每一句台词,观看体验绝对算不上好。 看完以后倒是能感觉到这部电影到底哪里精神了,里面的每一个军国主义分子确实都很帅气很精神,看的我热血沸腾恨不得朝天吼上一句 てんのうへいか,ばんざい! 嗯,又帅又有精神的军人我真是爱了爱了 果然昭和男儿一个两个一米八陆军粪土今月吃不饱饭依旧精神奕奕而且海陆军之间能够友好相处合理分配大米饭这个场景我了解到了。 但是要是说从中发现一个日本平民转变成军国主义分子这个电影的初衷我是没太看出来的,跳过了太长时间就看到了刺头被赏识努力有回报见大佬找靠山;反正平田一郎这个贫农儿子一路火箭上升进入精英军人圈子的经历写的倒是比龙傲天小说更加平易近人,结局留了个悬念没说是死是活,这点就跟上天入地称霸宇宙的起点小说区别开了。 要是看完电影之后问我有没有想玩精神梗? 反正我是玩不起来。 嗯,看了一遍之后我倒是把这部电影和小白文比较起来了,男主确实精神。 对了,一个一艘军舰都没有出现的海军很是精神。
  6. 原题链接: https://sstm.moe/topic/255008-每-周-概-率-挑-战-【第一期】/ 已有的优质答案: 第一问实际上等价于求参拜客踩到各个台阶上的概率,然后选取概率最大的台阶挖坑即可。 为了方便,我们不妨假设还有-1、-2、-3、-4、-5层台阶。现在已知参拜客最开始必然出现在0号台阶。因此我们可以初始化概率 P[0] = 1 P[-5: 0] = 0 考虑参拜客在台阶i上,下一步会有各P / 6出现在i+1到i+6上。把这个想法重复6次,我们即可得到参拜客出现在台阶j上的概率是由j-6到j-1这6个台阶的概率的1/6组成的,即: P[j] = sum(P[j - 6 : j]) / 6 现在我们有了初始状态和递推公式,即可把全部100层台阶的概率全写出来 def forward(startIndex, initP) for index in range(startIndex, 101): initP[index] = sum(initP[index - 6 : index]) / 6 P[0] = 1 P[-5: 0] = 0 P = forward(1, P) 接下来只要找到这里面的最大值在哪即可 return argmax(P[1 : 101]) 第二问因为早苗可以挖2个坑,而参拜客只有1条命,那么实际上坑到参拜客只有2种情况:1. 参拜客被第一个陷阱坑了, 2. 参拜客躲过了第一个陷阱但是被第二个坑了。这两个事件是互斥事件,因此被坑的概率可以直接求和 所以最暴力的方案就是我们搜索所有可能的2个坑的情况,即: for index1 in range(1, 101): for index2 in range(index1 + 1, 101): p1 = #TODO p2 = #TODO prob = p1 + p2 情况1可以直接参考第一问,列出参拜客走到各台阶的概率。 p1 = P[index1] 情况2会麻烦一些,因为我们需要先保证参拜客没有走到前一个陷阱,因此我们新开一个数列计算。显然在index1之前的概率不会有影响,但是index1的概率我们需要强制置为0来保证参拜客没有走到这个台阶上,随后我们可以继续进行递推公式 def evade(index, P): newP = copy(P) newP[index] = 0 newP = forward(index1 + 1, newP) return newP newP = evade(index1, P) p2 = newP[index2] 接下来就是找到使得prob最大的index1和index2即可 if prob > tempMaxProb: tempMaxProb = prob tempMaxIndex = (index1, index2) 第三问实际上就是第二问的推广,最坏情况下我们可以用index1到index5建立5重循环,暴搜就好了 第四问我们有5个坑,但是参拜客有2条命。我们把情况分解来看,参拜客可能踩到12,13,14,15,23,24,25,34,35,45。总计10种情况,且每种情况都是互斥的,所以还是直接都加起来就好了(笑) 实际上我们可以把这些情况稍微整理下。考虑第一个坑踩到的是1,那么为了坑到参拜客,参拜客必须要在2345里面踩到1个。同理,如果第一个坑是2(即参拜客躲开了1),那么必须在345里踩一个。如果第一个是3(即躲开了12),那么必须踩45里的一个。如果是第一个是4,(躲开了123),那么必须要踩5。 作为举例,我们考虑情况第一个是3,(躲开了12),接着在45里踩一个。 首先我们要求参拜客确实第一个踩的是3的概率p3: for index1 in range(1 : 101): for index2 in range(index1 + 1 : 101): for index3 in range(index2 + 1 : 101): for index4 in range(index3 + 1 : 101): for index5 in range(index4 + 1 : 101): prob1 = #TODO: case 1 + 2345 prob2 = #TODO: case 2 + 345 newP1 = evade(index1, P) newP2 = evade(index2, newP1) p3 = newP2[index3] p34 = #TODO p35 = #TODO prob3 = p3 * (p34 + p35) prob4 = #TODO: case 4 + 5 prob = prob1 + prob2 + prob3 + prob4 接下来变成了假定参拜客确实踩在了3上,给定这个条件,实际上我们并不需要再去考虑之前参拜客踩过哪里了,因为这些信息不再影响下一步参拜客踩在哪的概率。形象一点的说法,就像我们知道参拜客最开始在0号台阶上,我们不会关心他是坐着幻想乡里不存在的公交车,还是从紫maslkdjflw的隙间里过来来到0号台阶的,因为之后无论如何,他都是1/6概率走到123456号台阶上。同样的道理也在index3上有效,之后无论如何,他都是1/6的概率走到了index3 + 123456上。我们在某种意义上可以把index3视作新的“0号台阶”。 def trap(index): newP[index] = 1 newP[index - 5 : index] = 0 newP = forward(index + 1, newP) return newP newP3 = trap(index3) 那么之后的问题就变成了在newP3的分布上,参拜客要么踩到4,要么躲开了4踩到5的概率: p34 = newP3[index4] newP4 = evade(index4, newP3) p35 = newP4[index5] 同样的道理用在其他的情况上,最后再找到使得prob最大的index就完成了。 第五题其实就是第四题的推广。我们的情况变成了1 + 2 + 345, 1 + 3 + 45, 1 + 4 + 5, 2 + 3 + 45, 2 + 4 + 5, 3 + 4 + 5 这6大种情况了
  7. 填空题:爱国是工作,()。 奥斯卡小金人又多了强大的竞争对手。 PS:我知道这是19年的瓜,但是鞭尸一波不好吗?
  8. 前两天事情有点多,(连电脑都没时间开),于是鸽了一天x 召唤阵: @yhz012 @inuisanaa @ZERC @随性而为 @NianRuoshui @摸鱼奇才咖啡喵 第14期 【大力】出奇迹 这是一个很老套的故事:有一个回合制的RPG游戏,里面有一个可以拿装备/道具/塞尔逵公主的副本,副本里有若干怪物,想要拿到奖励就得把怪物一一打倒才行。我们的主人公K018打算下这个副本。这个B非常勇,他决定不带回血的药也不练回复技能,就硬莽。他出发之前掂量了一下自己的斤两,觉得就这么莽多半是直接凉凉。但是已经说过不带药和回复技能了,怎么办呢? 他思来想去,决定找天桥的某位“药剂供应商”买一点【大力】。这位天桥药剂供应商向他保证:只要吃一份【大力】,下次攻击的伤害就能超级加倍!听了这话我们的主人公K018激动地当场买下了他能买下的全部【大力】,然后就准备下副本了。 已知K018的血量H和攻击伤害D,每一个怪物的血量L_i和攻击伤害K_i,以及我们主人公K018持有的【大力】数量。 主人公每吃下一份【大力】,下一次攻击的伤害就增加D。例如某次攻击前他一口气吃下了10份【大力】,那么这次攻击他就能打出11D的伤害!不过,如果下次攻击前没有继续吃【大力】的话,那仍然只能打出D的伤害。当然,怪物不会蠢到去天桥买【大力】,所以怪物是没有的。同时,由于K018非常勇,所以跟怪物交手时总是他先出手。 我们的主人公K018觉得他彳亍了。各位算算看,他真的彳亍吗? 输入 第一行有三个整数H, D, m和n。H表示K018的血量,D表示K018的攻击伤害,m表示他持有【大力】的份数,n表示怪物数量。 接下来n行,每行两个整数L_i和K_i,分别表示第i个怪物的血量和攻击伤害。 提示:主角和怪物是轮流攻击的直到有一方被打倒为止。主角一次只面对一个怪物。 输出 如果K018能做到在被打倒(血量小于等于0)前打倒所有怪物,就输出一行“彳亍”,否则输出一行“不彳亍”。 有一说一,只吃一份【大力】攻击伤害确实能翻倍,天桥卖大力的倒也没说假话
  9. 今天呢,今天决定来一道丧心病狂的题目! 来看题: 第17期. 这不是一个丧心病狂的题目 题目描述: 输入中每行以十进制形式给出一个整数N (),输出该数字在英文中的表达。 英文中数字的表达遵循如下规则: 1.0-19分别直接以如下的单词进行表达: { "zero","one","two","three", "four","five","six","seven", "eight","nine","ten","eleven", "twelve","thirteen","fourteen","fifteen", "sixteen","seventeen","eighteen","nineteen" }; 2.20-99,用一个单词或两个单词连接进行表达。若能被10整除则直接用一个单词进行表达: { "twenty","thirty","forty","fifty", "sixty","seventy","eighty","ninety" }; 若不能被10整除,则将十位和个位用连字符连接。如23在英文中的表达为"twenty-three"。 3. 100-999,先表示百位,再表示十位和个位,并以and连接。如123在英文中的表达为"one hundred and twenty-three" 4.对于不小于1000的数字,从右向左,每三位将数字划分一次。对于每一部分,先直接表示,然后加上对应的单位。如果一部分的三个数字都是0则直接省略。如12,345在英文中的表达为"twelve thousand three hundred and forty-five" 从高位到低位,每部分的单位分别为 { "billion",//10^9 "million",//10^6 "thousand",//10^3 ""//1, needs to add nothing }; 输入: 多组用例,以EOF结束。每行以十进制形式给出一个整数N () 输出: 对于每个输入的整数,输出一行,为该数字在英文中的表达。 输出中不允许开头,结尾或单词之间出现任何多余的空格(' ')或连字符('-')。 召唤阵: @yhz012 @inuisanaa @ZERC @随性而为 @NianRuoshui @摸鱼奇才咖啡喵
  10. 第13期—— 本题来源:HDU4126,题意复述如下: 现有n个据点,两两之间连有道路。现在要在一些道路上驻扎守卫,使得任意两个据点之间都可以或者直接或者间接地传递消息(消息只能在有守卫驻扎的道路上才能传递,否则会丢失或者被截获)。已知每条道路需要的守卫数量。 现在得到情报,有一条道路上会发生游击队袭扰,受到影响的道路需要增派守卫来保障消息的安全传递。当然,也可以不再用这条道路,换用其他的道路驻扎守卫。现在尚不清楚游击队具体会在哪条道路上进行袭扰,只能大致圈定可能发生袭扰的范围。同时,我们知道如果在某个地方发生了袭扰时需要增派的守卫数目。如前所述,游击队袭扰同时只会发生在一条道路上。 现在已知每条道路所需的守卫数量和游击队可能的袭扰情况(多种可能,每种都会注明发生的道路和需增派的兵力。同一条道路上的袭扰所需的增派兵力时可能不同的,它们视为不同的可能性)。问,在每种情况下所需的最少守卫数量是多少? 召唤阵: @yhz012 @inuisanaa @ZERC @随性而为 @NianRuoshui @摸鱼奇才咖啡喵
  11. 主要今天要参加一个不得不参加的校赛 在最后的30分钟实在做不出来了 决定问问万能的网友(x) 54分更新:艹 原来这里有好无脑的方式做 现在已经做出来了 题目描述 Cubercsl 很喜欢 01 字符串,就像“她喜欢大海”,这一天他想送她一个由 01 字符串组成的集合。 他自然是希望这个集合越多样化越大越好。所以他希望这个集合满足以下条件。 每个字符串由 0 和 1 组成。 每个字符串长度在 1 到 n 之间,且两两长度不同。 集合中任何一个字符串都不是其他字符串的子串。 请你帮他找到满足他要求的最大的集合。 字符串 a 是 b 的子串当且仅当从 b 的头部和尾部删除一些字符(可以是零个或者所有)能得到的 a。 输入描述: 仅一行,包含一个整数 n(1≤n≤300)。 输出描述: 第一行输出这个集合的大小 k。 接下来 k 行每行输出一个 01 字符串,表示这个集合的一个元素。 答案不唯一,任何符合要求的答案都会被判为正确。 示例1 输入 1 输出 1 1 示例2 输入 5 输出 4 00 110 1010 11111 (反正菜鸡如我已经是做不来了)
  12. 惊了!!!这个没人看的系列居然能初到第10期!!!!!! 今天扒一道贪心题好了: 第10期 最喜欢的“硬菜” 题目描述: "华瑞世纪”程序设计竞赛圆满结束了,由于PQ God赛前庄严承诺"良乡小学二队”不夺冠,他就请吃饭(虽然夺冠也得请吃饭),没想到帅气迷人的人生赢家会长大人实力太强,单刷7题怒拿冠军,PQ不得不兑现承诺...... 集训队众对"硬菜”都有着自己独到的见解,每个人都点了一道菜,不一会,菜便上齐了,众人便开始动筷(不科学),由于桌子是可以旋转的,每个人便等着自己最喜欢的菜转到自己前面(当然不一定是自己点的菜啊),然后......(自行脑补) 可怜的hybest等了很久,他最喜欢的菜也没转到自己面前,便默默念想,至少旋转多少次,每个人才能吃到自己喜欢的菜。 输入: 有若干组数据输入, 每组数据中第一行为一个整数n(1<n<10^6), 接下来有n个数,ai代表刚上完菜时第i个人面前放的是第ai个人最喜欢吃的菜。 输出: 对于每一组数据,输出桌子至少旋转的次数。 样例输入: 6 1 2 3 4 5 6 5 1 1 1 1 1 5 1 2 4 3 5 样例输出: 0 4 2 本题目是2014年出的题,当时某比赛貌似还叫这个名字,现在这个比赛已经至少改过两次名字和一次赞助商了。 召唤阵: @yhz012 @inuisanaa @ZERC @随性而为 @NianRuoshui @摸鱼奇才咖啡喵
  13. 这几天被家人吐槽屋子里汗味较重(嘛……可能是“只可意会不可言传”的味道……) 明明每天都在洗澡和打扫通风 还是不行 所以今天顺手买了几盒空气清新剂 结果开了一盒发现味道太重以至于有点难受 我在这里给大家提个醒 建议还是少用 百度了一下发现是对身体有害的 尤其是夏天暴晒空气清新剂会产生有毒气体 造成二次污染 还有不要买便宜货! 我买的两盒 一盒4.5元 实在是贪便宜了 吃了大亏
  14. 毫无价值的前言 不出意外的话,以下规则适用于之后的每一期(如果有的话) 1. 解析解数值解均可 2. 解析解需要给出公式推导 3. 数值解要给出数值解的计算方法(有伪代码或者代码最好) 所以今天就先来试个水,出个经典问题好了 第零期:今天红魔馆炸了吗 为了掩盖自己盗书的罪证,魔理沙在红魔馆安放了定时炸弹。威严满满的蕾米莉亚准备亲自拆炸弹,她发现一共有3处可疑的地方,分别是门卫室、图书馆和地下室。爱妹心切的蕾米莉亚正准备前往地下室时,路过的古明地觉看到蕾米莉亚正准备前往地下室去找炸弹。古明地觉告诉蕾米莉亚,她刚才遇到了魔理沙,所以知道定时炸弹在哪。她也知道蕾米莉亚正要去地下室找炸弹,不过她又想看每天一次的炸红魔馆,所以她不会说炸弹在不在地下室。不过又觉得无辜的蕾米莉亚只能抱头蹲防的样子太可怜了,所以可以告诉蕾米莉亚,在剩下两个地方里,图书馆是肯定没有炸弹的。请问这时候,蕾米莉亚为了避免红魔馆被爆破,她应该去门卫室呢,还是该去地下室呢? 召唤阵 @Mr.K 018 @ZERC @alan00290
  15. 已经出到第15期啦!下一期难道就需要两位数了吗?! 时间过得好快啊。 今天这道题想做出来不难,但是想要跑得快(西方记者:?)的话,需要一点知识和技巧才行。 召唤阵: @yhz012 @inuisanaa @ZERC @随性而为 @NianRuoshui @摸鱼奇才咖啡喵 第15期 给绳子染色 有一根绳子,我们要把它涂上各种颜色用来装饰。可以把绳子想象成一段一段的,一共有n段,每次涂色都会涂连续的若干段。比如,先把第1段到第10段涂成红的,仔把第5段到第20段涂成绿的,再把第3段到第7段涂成白的,等等。不用在乎每种颜色都叫什么,我们用一个数字来表示颜色。 涂了一段时间颜色之后,涂色的人也搞不清楚绳子被涂成啥样了。现在他想问问你,指定的两个段之间(包含这两个段),有多少种不同的颜色? 输入 输入有多行,请读取到文件尾。 第一行是绳子的总长度n和颜色的种数k。接下来若干行,每行可能有两种情况: p x y c,表示从第x段到第y段(含x, y),涂上第c种颜色; q x y,表示询问第x段和第y段(含x, y)之间的颜色种数。 输出 对每个询问输出一行一个整数,表示颜色种数。 难度选择 本题分为两种难度:easy和hard。在easy模式中,保证任意两次涂上的颜色不相同;在hard模式中则可能会相同。
  16. 第16期到了! 出题人偷偷地告诉各位,这个题之所以放在这里,是因为它没有看上去那么难哦…… 召唤阵: @yhz012 @inuisanaa @ZERC @随性而为 @NianRuoshui @摸鱼奇才咖啡喵 第16期 数独终局 各位应该都了解数独。数独的目标是从指定的状态出发,设法解出一个合理的数独终局——即数独棋盘的九行、九列和九个九宫格中,1-9这九个数字都恰出现一次。今天的任务并非给数独求解,而是从空的数独棋盘开始,“从无到有”地生成出数独终局。 并且,我们要生成出许多数独终局,左上角的数字还要求一样。 输入 只有一组测试用例。一行两个整数a和n,分别表示数独终局左上角的数字,和要求给出的数独终局数量。保证1<=a<=9, 1<=n<=2,000,000。 输出 输出所有的数独终局,两个数独终局间空一行。数独终局的形式如下: 123456789 234567891 345678912 456789123 567891234 678912345 789123456 891234567 912345678 不要输出到标准输出流中。请输出到文件result.txt。 时间限制 用C或C++编制的程序,时间限制分为三级: easy:无时间限制 normal:120秒 hard:30秒 extreme:20秒(仅Windows) 想要挑战extreme难度?试试Windows的文件映射相关API,或者换用固态硬盘没错,氪金使人变强 ------ 虽然有四个模式,但是本题有意思的点都在easy模式和normal模式之间,剩下两个难度都是解决“如何科学地和硬盘打交道”这样的无聊的编程小问题。因此,只考虑算法的话,挑战normal模式就可以了。 各位加油!
  17. 第12期,感觉来看的人越来越少了…… 这个题看上去像是汉诺塔问题的变种,但仔细观察会发现和汉诺塔相比,本题和第5期更为相像。下面上题: 第12期 土豪爱摆土豪金 HYB是一个土豪,他有n只土豪金。 十分无聊的他给他的土豪金们从1-n编上号然后又开始摞土豪金玩儿了= = 一开始他的土豪金们按次序摞成一摞,我们管这摞叫起始摞a,a的最上面是土豪金1,最下面是土豪金n。 然后他有一个暂存摞,我们叫它b,一个结果摞,叫c。 每次,他可以从a(如果a不空的话)拿最顶上的一个放到b,或者拿b最顶上一个放到c的最上方(同理b不空的话) 现在,他给出 c摞从底部到顶部的土豪金的编号,问是否能通过以上操作实现 由于HYB要买别的东西,所以他的土豪金只剩下最多999个了 输入: 有若干组数据输入 每组数据中,第一行为两个个整数n和m,n表示hyb有n台土豪金,m表示这组数据有m个c的序列需要判断,当n=0 并且m=0时停止 接下来有m行,每行表示一个c序列 对于每一个c序列,视为a从原始状态(a最上方为1,最下方为n)重新开始。 输出: 对每一个c的序列,如果能得到,就输出Yes ,否则输出 No 每组数据之间输出一空行 source:poj 翻译:707 样例输入: 5 2 1 2 3 4 5 5 4 1 2 3 6 1 6 5 4 3 2 1 0 0 样例输出: Yes No Yes
  18. 第11期哦! 话说感觉来的人越来越少了啊,是不是该考虑转型了呢?转型成啥样比较好呢……(这里要 @NianRuoshui) 今天这个题算法不难,大家都可以来思考一下算法,能给出伪代码就更好了。 不多说,上题: 1. 钢哥的填字游戏 题目背景: BIT ACM/ICPC集训队教练**钢老师(钢哥)最近非常喜欢玩一款叫做”疯狂填字”的游戏。在去长沙赛区比赛的路上,钢哥和大家欢乐地玩了一路填字游戏。 给定一个10 * 10的格子,其中一些格子不能填字,剩下的格子可以填字。所谓填字游戏,是要将一些字填入这些格子里,使得这些格子里的字从左至右或者从上到下构成一个词语。所有可填的格子必须填满。 知识渊博的钢哥在游戏一开局就联想到了一些候选词语。给定一个填字游戏,钢哥想知道,用他自己想到的词语是否能够过关。 输入: 第一行,一个整数N,代表钢哥想到的词语数(N <= 24)(每个词最多用一次,但不一定要全都用上) 相同长度的词至多出现三个。 接下来N行,每行一个长度大于等于2小于等于10的字符串(均为大写字母),代表钢哥知道的词。 接下来是一个10 * 10的矩阵,代表游戏的初始状态。* 代表不可填的格子,# 代表可以填的格子。 (见样例) 输出: 如果用这些词汇可以过关,请输出答案。如果有解,保证解唯一。如果不可以,请输出QAQ 题目作者: PQ 样例输入1: 7 ALGORITHM BIT ACMICPC WORD PUZZLE MATH DIRECT ****#***** *######### *#**#****# *#**###### ###******# *#******** *######*** *#******** ********** ********** 样例输出1: ****W***** *ALGORITHM *C**R****A *M**DIRECT BIT******H *C******** *PUZZLE*** *C******** ********** ********** 样例输入2: 7 ALGORITHM BIT ACMICPC WORD PUZZLE MATH DIRECT ****#***** *########* *#**#****# *#**###### ###******# *#******** *######*** *#******** ********** ********** 样例输出2: QAQ 召唤阵: @yhz012 @inuisanaa @ZERC @随性而为 @摸鱼奇才咖啡喵
  19. 最近想改变一下外形 于是买了一套“潮流”夏装 穿上去尴尬癌都犯了 我看了一眼镜子就赶紧脱下来了 果然还是最普通的半截袖合适吗 我也想变得像线虫一样啊 就是变成黄毛也行啊 就这个衣服 图上看着感觉一般 穿上真的就是破烂 (感觉就是穿VTBT恤衫都没这个社会性死亡程度高)
  20. 第19期来力! 照例是个模拟题,这一期敲样例输出可把我累坏了( 有工具专门做这件事没错,所以用了工具的要贴出所有源代码(包括工具的输入脚本等)哦 虽然写了1,但是估计不会有2,因为我估计2的工作量就太大了,不符合我们的初衷。不过这道题还好。 第19期 冰系魔法1 传说在某个异世界里是存在元素的,也存在元素魔法。有一次,那个世界的来客向我们展示了一种那个世界的冰系魔法: public class Artia{ public static void main(String[] argv){ System.out.println("Artia's Ice Magic"); } } MrK-018发现,这段魔法的咒语好像可以分解成一个个的单词,好像还能给单词分类。不过,手动把它们一个个摘出来也太麻烦了,还是写一个程序自动区分出魔法咒语里的单词吧。 输入 一段Java源代码冰系魔法咒语。保证符合语法规范。 输出 对每个单词,输出其单词序号、原文和单词类别。格式参考输出样例。 样例输入 package artia; import java.util.*; public class Artia{ char ch = 'a'; String str = "Artia's Ice magic"; public static void main(String[] argv){ double d = 10.25+1; System.out.println(str); return; } } 样例输出 Token 1: 'package', 'package' Token 2: 'artia', identifier Token 3: ';', ';' Token 4: 'import', 'import' Token 5: 'java', identifier Token 6: '.', '.' Token 7: 'util', identifier Token 8: '.', '.' Token 9: '*', '*' Token 10: ';', ';' Token 11: 'public', 'public' Token 12: 'class', 'class' Token 13: 'Artia', identifier Token 14: '{', '{' Token 15: 'char', 'char' Token 16: 'ch', identifier Token 17: '=', '=' Token 18: '\'a\'', character Token 19: ';', ';' Token 20: 'String', identifier Token 21: 'str', identifier Token 22: '=', '=' Token 23: '"Artia\'s Ice magic"', string Token 24: ';', ';' Token 25: 'public', 'public' Token 26: 'static', 'static' Token 27: 'void', 'void' Token 28: 'main', identifier Token 29: '(', '(' Token 30: 'String', identifier Token 31: '[', '[' Token 32: ']', ']' Token 33: 'argv', identifier Token 34: ')', ')' Token 35: '{', '{' Token 36: 'double', 'double' Token 37: 'd', identifier Token 38: '=', '=' Token 39: '10.25', floating Token 40: '+', '+' Token 41: '1', integer Token 42: ';', ';' Token 43: 'System', identifier Token 44: '.', '.' Token 45: 'out', identifier Token 46: '.', '.' Token 47: 'println', identifier Token 48: '(', '(' Token 49: 'str', identifier Token 50: ')',')' Token 51: ';', ';' Token 52: 'return', 'return' Token 53: ';', ';' Token 54: '}', '}' Token 55: '}', '}' Token 56: <EOF>, <EOF>
  21. 第一期 年久失修的博丽神社 为了争取更多的信徒,东风谷早苗决定在博丽神社外的台阶上挖陷阱来阻碍人们前往博丽神社。现已知博丽神社外台阶共有100阶,参拜客从山脚下(即第0个台阶)开始上山,每次有各1/6的概率爬1、2、3、4、5、6阶。 1. 早苗是在凌晨3点想到的这个巧妙的办法,到日出之前只够挖1个陷阱的时间,请问早苗应该把这个陷阱挖在第几个台阶才更可能坑到参拜客? 2. 早苗决定等第二天晚上用一整晚时间挖陷阱,她一晚上可以挖2个陷阱,请问早苗应该把这两个陷阱分别挖在第几个台阶才更可能坑到参拜客? 3. 早苗决定利用河童重工的技术,一晚上挖5个陷阱,请问早苗应该把这些陷阱分别挖在第几个台阶才更可能坑到参拜客?(显然挖6个的话连挖6个肯定就坑死人了,所以5个是最复杂的情况了) 4. 众所周知,幻想乡是有残机这个概念的,被陷阱坑了一次也不会没命。假设参拜客都是被坑了两次才会没命,请问早苗应该把这5个陷阱分别挖到第几个台阶才更可能坑到参拜客? 5. 如果参拜客被坑3次才会没命的话,请问早苗应该把这5个陷阱分别挖在第几个台阶才更可能坑到参拜客? 运算量估计会比较大,不要求给出精确解,给出具体计算思路(或者伪代码)即可。 召唤阵 @Mr.K 018 @ZERC @alan00290
  22. 第18期来啦! 第18期 汉化组的吃人陷阱1 MrK-019有一次不小心暴露了自己会中日英三语和视频剪辑的事实,现在某个汉化组已经布下了天罗地网,只要时机一到就要把他收入囊中,调教成无情的汉化机器! 已知汉化组布下的天罗地网是一种格子迷宫,只有一个出口。迷宫大概是这样的: ###### #K...# ####.# #S...# ###### 如图所示,图上标为#的地方都是墙,标.的地方都是可以走的部分。MrK-019初始所在的地方也是可以走的部分。MrK-019一秒可以走一格。出口只在某一秒开放,平时都是不能走的墙;如果MrK-019在出口开放的那一秒到达出口,他就能逃脱汉化组的吃人陷阱,否则就会被抓住吃掉(指调教成无情的汉化机器)。同时,由于汉化组的人就在后面穷追不舍,MrK-019必须不停地移动才行! MrK-019能不能从汉化组的吃人陷阱里逃出来呢? 输入 第一行是三个整数m,n,s,分别表示迷宫的长和宽,以及出口在第几秒开放。 接下来是一个m*n的字符矩阵,表示汉化组设下的迷宫。格式见题干和输入样例。 输出 如果MrK-019能逃出来,就输出一行Yes,否则输出一行No。 样例输入1 5 6 8 ###### #K...# ####.# #S...# ###### 样例输出1 Yes 样例输入2 5 6 9 ###### #K...# ####.# #S...# ###### 样例输出2 No
  23. 召唤 @yhz012 这个题我觉得就是那种很狗的题。 做之前:???这也能做? 做之后:???就这? 解这个题需要对数独终局的两条引理: 引理1. 任意给定数独的第一行,可以构造出至少一个合法的数独终局。(实际上某一行即可,这里为了简便,就说是第一行) 怎么构造呢?可以像这样构造: 1 2 3 4 5 6 7 8 9 4 5 6 7 8 9 1 2 3 7 8 9 1 2 3 4 5 6 2 3 4 5 6 7 8 9 1 5 6 7 8 9 1 2 3 4 8 9 1 2 3 4 5 6 7 3 4 5 6 7 8 9 1 2 6 7 8 9 1 2 3 4 5 9 1 2 3 4 5 6 7 8 可以看出,这么构造过之后每一行、每一列、每一个九宫格之内1-9都恰好出现了一次。 这样的话,由于左上角的值不能变,剩下八个数能产生8!=40,320种排列。到这里还不够两百万,为了达到我们二百万终局的目标,我们还需要引理2. 引理2. 任给一个合理的数独终局,重新排列这个终局的前三行,所得终局仍然相同;对中间三行和后三行也成立。 举个例子:把上例中的第4行和第6行交换,得到的数独终局仍然合法;或者说,把7,8,9行重新排列成9,8,7行,得到的新数独终局仍然成立。 由于第一行有限制,它只好继续呆在第一行,因此前三行有2种排法;中间三行和后三行没什么限制,分别可以产生6种排法。 这样的话,任给一个数独终局,我们能构造出2*6*6=72个数独终局(包括给的那个终局)。 并用引理1和引理2,我们就能用这样的很简单的操作构造出多达72*40,320=2,903,040种不同的数独终局! 事实上,中间三行和后三行是可以整体交换的,这样可以构造出的数独终局数量还能再加倍。不过我们只要两百万种,不这么交换也够用了。 这样,我们就给出了能过掉normal的算法。当然,这个算法稍微做一点优化(主要是磁盘IO方面的),也是可以过掉hard和extreme难度的。实际上如果这个算法都过不掉的话,很难想象还有什么算法能过掉了,毕竟这道题输出量是非常大的…… 算法大意如下: 1. 首先构造出初始的第一行:从1排到9,然后把需要在左上角的那个数换过去。 2. 对第一行剩下8个数进行全排列,对每一个排列进行下述操作: 2.1 按照引理1提供的方法填满其余的格子; 2.2 按照引理2排列各行,输出之,直到输出数量够为止。 最后再说一下怎么就优化吧。这一部分其实不是算法本身关注的重点,不过还是简单说一下。 首先按照上面算法直接写,用C++的输入输出库的话,可以搞定normal难度,但是hard难度是跑不通的。 第一步优化:扔掉所有C++输入输出方法,改用C语言的输出函数。这比C++的同样方法快得多。(所以说这里的优化都是一些无聊的小细节) 第二步优化:不要每输出一个数字就调用一次C语言输出函数,而是每输出一次数独调用一次。这样可以大幅减少函数调用的次数。(无聊细节+1)到此可以过掉hard难度。 第三步优化:其实交换两行的时候,不用整个一起交换的。可以记录一个“行索引表”,对行的交换只在索引表上进行。这需要对算法进行一些修改。 第四步优化:连C语言的输入输出函数都扔掉,而是直接用Windows的API。Windows的文件映射功能可以让程序可以像访问内存一样访问文件,进一步提高了磁盘的利用效率。这样,extreme难度也可以过掉了。 相比算法本身来说,这个优化过程就显得平凡很多了。而且在OJ平台上也没有Windows API可以调用不是么(笑
  24. 第21期来啦!本题是接着第20期继续出的一道题,所以本题要连着20期的题干一起读。 第21期 冰系魔法2b 各位已经见过了基本款的魔法骰子。实际上,魔法骰子还有更多改进款,支持很多更为复杂的功能。之前说的异世界来客就有这么一款骰子,她向我们展示了这个骰子的用法。 这个骰子依然可以像前一款那样计算表达式。它一次可以顺序处理多个掷骰表达式,每个掷骰表达式都需要用分号;结尾。同时,这个骰子还支持流程控制(不愧是魔法师的骰子),就是if,while和for语句。同时,多个语句还可以用大括号括起来,成为一个语法上的整体。它们的语法也不复杂,上例子: r1d6; if (r1d6-3) { while(r1d6-3) 15; (r3d20)*(r1d6); } else for(r1d6) if(r12d10-60) 1+1; r2d6; for (5) { r1d2; } 我们的异世界来客是个冰元素使,这个魔法骰子的语法和她魔法咒语的语法很接近,所以她很喜欢这个骰子。唯一美中不足的是,这个骰子没有判断输入是否合法的能力。如果输入了不正确的掷骰程序,魔法骰子就可能坏掉。因此,她打算编制一个魔法,可以预先判断输入是不是合法的。 输入 一段魔法骰子的输入程序。 输出 如果输入程序合法,就输出一行OK,否则输出一行Fail。 样例输入 r1d6;if (r1d6-3){while(r1d6-3) 15; (r3d20)*(r1d6);}else for(r1d6) if(r12d10-60) 1+1;r2d6;for (5){ r1d2;} 样例输出 OK 读到这里的朋友,是不是觉得这个题里魔法骰子的语法似曾相识?没错,这个语法是有意仿照C语言函数定义的部分来编制的。把rd运算符改成别的C语言运算符之后,甚至可以在C语言里跑起来(当然,要放在某个函数的函数体里才行,而且后面要加上return)。其实C语言的语法没那么难,不是么? 另外,总觉得今天这道题,非相关专业的学生应该不太好答出来了……那么,如果觉得自己不太会答这个题,那么可以试试ANTLR4. 微型召唤阵: @yhz012
  25. 第20期来啦! 如各位所见,我给自己挖了两个需要填上的大坑…… 这个题虽然是一个表达式求值,但考虑到以后可能出现的冰系魔法2b啥的(暗示),说明这题的目的不是简单的表达式求值哦。大家不一定非要打一个表达式求值的板子出来。 第20期 冰系魔法2a 传说在某个异世界里是存在元素的,也存在元素魔法。那里有一所魔法学院。与其他魔法学院不同,这所学院哪个系的魔法也不教,教的全是魔法背后玄而又玄的深奥知识。但是,来这所学院求学的人却是络绎不绝,因为从这所学院里学到大成之人已经可以自创一系魔法,早已超脱用某个系魔法施法的境界。不过,我们地球人想要一下理解异世界的艰深魔法理论还是很困难的,所以我们当然不会直接像大成之人那样自创魔法。我们从最简单的开始。 在那个异世界有一个魔法小工具,叫做骰娘魔法骰子。向这个骰子输入一个掷骰表达式(别问怎么输入,问就是魔法),这个骰子就能按照表达式的要求自动掷骰子,然后输出(别问怎么输出,问就是魔法)结果。这个小工具在异世界非常流行,几乎家家户户都有。 异世界魔法骰子比地球的骰娘要强大很多。地球的骰娘最多只支持形如rAdB+C的表达式,表示投掷A个B面的均匀骰子,结果取出目的总和再加上C。异世界的骰娘不光支持掷骰,还支持加减乘除四则运算。并且,表达式还能嵌套,允许加括号。比如说:(r3*5+7d2*(r1d6)-1)/2。这个表达式的意思是:先掷一枚6面骰子,出目乘2后减去1,作为骰子的面数(记为A),之后投掷15+7=22个这样的骰子(注意每个骰子都有A个面,而非每个骰子的面数都不相同),出目总和除以2,舍弃小数部分后作为结果输出。 我们规定,括号的运算优先级最高(废话),其次是乘除法,再次是加减法,最后是掷骰子运算。 MrK-018手头已经有了一些用来进行四则运算、模拟掷骰子和输出用的魔法。给定一个掷骰子表达式,他想知道怎样按顺序地调用这些魔法,才能得到表达式要求的输出。 输入 一个掷骰表达式。保证涉及到的数字只有十进制非负整数,不涉及小数。整数可能以以下几种形式出现: 一般形式,如114514 科学计数法,如1.14e5,1.14E5,3E8等等。 输出 这个表达式对应的魔法调用序列。对于不符合文法的表达式,输出一行Syntax error!。输出的数字格式要与 样例输入1 (r3*5+7d2*(r1d6)-1)/2 样例输出1 输出不唯一,此处展示一种可行的输出。 1: rd 1 6 2: mul 2 [1] 3: sub [2] 1 4: mul 3 5 5: add [4] 7 6: rd [5] [3] 7: div [6] 2 8: out [7] 样例输入2 4e50 样例输出2 1: out 4e50 样例输入3 4d 样例输出3 Syntax error!
×
×
  • 新建...

重要消息

为使您更好地使用该站点,请仔细阅读以下内容: 使用条款