
openjudge/信息学奥赛一本通
无
lwz_159
原acmer(已退役)
展开
-
Cell Phone Network(树形dp)
描述Farmer John has decided to give each of his cows a cell phone in hopes to encourage their social interaction. This, however, requires him to set up cell phone towers on his N (1 <= N <= 10,0...原创 2020-03-19 18:52:47 · 611 阅读 · 0 评论 -
特殊密码锁
描述有一种特殊的二进制密码锁,由n个相连的按钮组成(n<30),按钮有凹/凸两种状态,用手按按钮会改变其状态。然而让人头疼的是,当你按一个按钮时,跟它相邻的两个按钮状态也会反转。当然,如果你按的是最左或者最右边的按钮,该按钮只会影响到跟它相邻的一个按钮。当前密码锁状态已知,需要解决的问题是,你至少需要按多少次按钮,才能将密码锁转变为所期望的目标状态。输入两行,给出两个由0、1...原创 2020-03-17 20:18:31 · 1150 阅读 · 0 评论 -
显示器
描述你的一个朋友买了一台电脑。他以前只用过计算器,因为电脑的显示器上显示的数字的样子和计算器是不一样,所以当他使用电脑的时候会比较郁闷。为了帮助他,你决定写一个程序把在电脑上的数字显示得像计算器上一样。输入包括若干行,每行表示一个要显示的数。每行有两个整数s和n (1 <= s <= 10, 0 <= n <= 99999999),这里n是要显示的数,s是要显示的数...原创 2020-03-14 21:56:01 · 480 阅读 · 1 评论 -
整数区间
【题目描述】请编程完成以下任务:1.从文件中读取闭区间的个数及它们的描述;2.找到一个含元素个数最少的集合,使得对于每一个区间,都至少有一个整数属于该集合,输出该集合的元素个数。【输入】首行包括区间的数目n,1≤n≤10000,接下来的n行,每行包括两个整数a,b,被一空格隔开,0≤a≤b≤10000,它们是某一个区间的开始值和结束值。【输出】第一行集合元素的个数,对于每一个区间都至...原创 2020-03-14 12:09:00 · 1373 阅读 · 0 评论 -
最短前缀
一个字符串的前缀是从该字符串的第一个字符起始的一个子串。例如 "carbon"的字串是: “c”, “ca”, “car”, “carb”, “carbo”, 和 “carbon”。注意到这里我们不认为空串是字串, 但是每个非空串是它自身的字串. 我们现在希望能用前缀来缩略的表示单词。例如, “carbohydrate” 通常用"carb"来缩略表示. 现在给你一组单词, 要求你找到唯一标识每个单...原创 2020-03-14 10:14:12 · 2136 阅读 · 1 评论 -
Crossing River
【题目描述】几个人过河,每次过两人一人回,速度由慢者决定,问过河所需最短时间。【输入】输入t组数据,每组数据第1行输入n,第2行输入n个数,表示每个人过河的时间。【输出】输出t行数据,每行1个数,表示每组过河最少时间。【输入样例】141 2 5 10【输出样例】17题目分析:这个题的贪心策略是:可以每次先送过河用时最长的两个人过河,并且每次用过河用时最短的两人将船划回...原创 2020-03-13 18:26:51 · 781 阅读 · 0 评论 -
放苹果(dp)
【题目描述】把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。【输入】第一行是测试数据的数目t(0≤t≤20)。以下每行均包含二个整数M和N,以空格分开。1≤M,N≤10。【输出】对输入的每组数据M和N,用一行输出相应的K。【输入样例】17 3【输出样例】8题目分析:方法一:这个题最简...原创 2020-03-12 22:33:49 · 518 阅读 · 0 评论 -
金币
描述国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。你需要编写一个程序,确定从第一天开始的给定...原创 2020-03-09 10:04:13 · 339 阅读 · 0 评论 -
画矩形
题目描述根据参数,画出矩形。输入输入一行,包括四个参数:前两个参数为整数,依次代表矩形的高和宽(高不少于3行不多于10行,宽不少于5列不多于10列);第三个参数是一个字符,表示用来画图的矩形符号;第四个参数为1或0,0代表空心,1代表实心。输出输出画出的图形。样例输入7 7 @ 0样例输出@@@@@@@@ @@ @@ @@ @@ ...原创 2020-03-08 10:15:18 · 903 阅读 · 0 评论 -
回文素数
描述一个数如果从左往右读和从右往左读数字是相同的,则称这个数是回文数,如121,1221,15651都是回文数。给定位数n,找出所有既是回文数又是素数的n位十进制数。(注:不考虑超过整型数范围的情况)。输入位数n,其中1<=n<=9。输出第一行输出满足条件的素数个数。第二行按照从小到大的顺序输出所有满足条件的素数,两个数之间用一个空格区分。样例输入 1样例输出 4...原创 2020-03-06 20:53:24 · 1657 阅读 · 0 评论 -
1的个数(lowbit 函数应用)
描述给定一个十进制非负整数N,求其对应2进制数中1的个数。输入输入包含一行,包含一个非负整数N。(N < 109)输出输出一行,包含一个整数,表示N的2进制表示中1的个数。样例输入100样例输出3这道题比较简单,如果一个数不能被2整除,那么这个数二进制形式的最后一位就是1,可以通过这个来判断1的个数。#include <iostream>#include ...原创 2020-03-01 10:41:50 · 1348 阅读 · 3 评论 -
词典(stringstream 应用)
描述你旅游到了一个国外的城市。那里的人们说的外国语言你不能理解。不过幸运的是,你有一本词典可以帮助你。输入首先输入一个词典,词典中包含不超过100000个词条,每个词条占据一行。每一个词条包括一个英文单词和一个外语单词,两个单词之间用一个空格隔开。而且在词典中不会有某个外语单词出现超过两次。词典之后是一个空行,然后给出一个由外语单词组成的文档,文档不超过100000行,而且每行只包括一个外语...原创 2020-03-01 10:05:07 · 549 阅读 · 0 评论