2297.棋盘
input:chess.in output:chess.out
时间限制: 1000 ms 空间限制: 262144 KB
题目描述
众所周知,国际象棋的棋盘是一个网格。国际象棋中有一种旗子叫象。象每次移动可以斜着走任意格。即假设一只象在网格(x,y),每次移动可以选择一个正整数k,使象移到(x-k,y-k),(x-k,y+k),(x+k,y-k),(x+k,y+k)中的一个格子。
现有若干组询问,每组询问给出两个格子(x,y),(u,v),你需要回答一只象如果初始时在(x,y),能否通过若干步(可以不走)到达(u,v)。
输入
第一行一个正整数T,表示询问数量。
接下来T行,每行四个正整数x,y,u,v,表示一组询问。
输出
T行,每行一个”Yes”或”No”(不含引号),表示你的回答。
样例输入
12345651 1 2 22 3 2 21 2 4 33 4 2 21 1 1 1
样例输出
12345YesNoYesNoYes
数据范围限制
对于30%的数据,0<T<=5,0<x,y,u,v<=4
对于50%的数据,0<T<=10,0< ...
2296.神殿
input:temple.in output:temple.out
时间限制: 1500 ms 空间限制: 524288 KB
题目描述
输入
输出
样例输入
12345678910样例输入12 2+**U1 1 2 2样例输入22 3<><><>1 1 2 1
样例输出
1234样例输出1-1样例输出24
数据范围限制
提示
题目标中的特殊符号:<>^v+*|-
代码
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 ...
2295.栈
input:stack.in output:stack.out
时间限制: 1000 ms 空间限制: 524288 KB
题目描述
输入
输出
样例输入
1251 4 3 5 2
样例输出
11 2 4 3 5
数据范围限制
提示
依次使用操作 1、2、1、1、1、1、2、3、3、2 可以得到样例输出 1 2 4 3 5 。
代码
12345678910111213141516171819202122232425262728293031323334#include<bits/stdc++.h>using namespace std;int main(){ freopen("stack.in","r",stdin); freopen("stack.out","w",stdout); int n,a[110000],rm[110000],q[110000],l=1,r=0; scanf("%d",&n); rm[n+ ...
2293.深水旅店
input:hotel.in output:hotel.out
时间限制: 1000 ms 空间限制: 262144 KB
题目描述
一共有N个人在排队,他们都有自己的编号,保证编号大于0且小于2000001,
每个人都有自己前面和后面人的编号,如果他前面或后面没人,则会用 0 代替,
一共只有一条拿酒的队伍。
输入
第一行一个整数 N 表示人的个数
接下来 N 行表示每个人记下的编号
保证每个人的标号不同
输出
一行 N 个数,中间用空格隔开,表示这个编号。
样例输入
12345678910111213【样例输入 1】492 310 731 07 141【样例输入 2】50 11 44 03 25 3
样例输出
1234【样例输出 1】92 7 31 141【样例输出 2】5 1 3 4 2
数据范围限制
代码
123456789101112131415161718192021222324252627282930313233343536373839404142#include<bits/stdc++.h>using namespace std;const int ...
2292.区间
input:interval.in output:interval.out
时间限制: 2000 ms 空间限制: 524288 KB
题目描述
有一个长度为N的序列a[1],a[2]…a[N]。对于一个包含a[L],a[L+1]…a[R]的区间[L,R],小W认为如果存在一个位置a[K]满足区间内所有的数都是a[K]的倍数,那么这个区间是合法的,并且这个区间的价值为R-L,否则这个区间是不合法的。现在小W想知道所有合法的区间中价值最大的区间价值是多少,并且你要告诉他这些区间的左端点(如果有多个区间的价值等于最大值,那么你需要告诉他所有的左端点)。
输入
第一行一个数N,表示数的个数。
第二行N个空格隔开的正整数,表示a[1],a[2]…a[N]。
输出
第一行两个数x,y,分别表示价值最大的区间的个数以及最大价值。
第二行若干个由空格隔开的整数,从小到大输出价值最大的区间的左端点。
样例输入
123456789【样例输入1】54 6 9 3 6 【样例输入2】3015 15 3 30 9 30 27 11 5 15 20 10 25 20 30 15 30 15 25 5 10 ...
2291.序列
input:seq.in output:seq.out
时间限制: 1000 ms 空间限制: 524288 KB
题目描述
有一个长度为n的序列A,其中有m个位置是1,其余位置全是0。你可以选择不超过k个区间,满足所有是1的位置都被至少一个区间覆盖。对于一个区间[l,r],我们定义它的长度为r-l+1,求满足条件的最小区间长度之和。
输入
第一行三个整数m,n,k,意义如上。
接下来m行,每行一个整数x,表示Ax是1。保证输入的x递增。
输出
输出一行一个整数,表示满足条件的最小区间长度之和。
样例输入
124 100 220 30 75 80
样例输出
117
数据范围限制
对于20%的数据,m,k≤10,n≤100;
对于50%的数据,m,k≤2000,n≤109;
对于100%的数据,m,k≤200000,n≤109。
代码
1234567891011121314151617181920212223242526272829303132333435#include<bits/stdc++.h>using namespace std;int m,n,k,p,u=1 ...
2267.宝物筛选
input:treasure.in output:treasure.out
时间限制: 1000 ms 空间限制: 60000 KB
题目描述
终于,破解了千年的难题。小 FF 找到了王室的宝物室,里面堆满了无数价值连城的宝物……这下小 FF 可发财了,嘎嘎。但是这里的宝物实在是太多了,小FF 的采集车似乎装不下那么多宝物。 看来小 FF 只能含泪舍弃其中的一部分宝物了……小FF 对洞穴里的宝物进行了整理,他发现每样宝物都有一件或者多件。他粗略估算了下每样宝物的价值,之后开始 了宝物筛选工作:
小 FF 有一个最大载重为 W 的采集车, 洞穴里总共有 n 种宝物的,每种宝物的价值为v [i], 重量为 w[i], 每种宝物有 m[i]件。 小 FF 希望在采集车不超载的前提下,选择一些宝物装进采集车,使得它们的价值和最大。
输入
第一行为 2 整数 N 和 W,分别表示宝物种数和采集车的最大载重。
接下来 n 行每行三个整数, 其中第 i 行第一个数表示第 i 类品价值, 第二个整数表示一件该类物品的重量, ...
2266.古代人的难题
input:puzzle.in output:puzzle.out
时间限制: 1000 ms 空间限制: 60000 KB
题目描述
门打开了, 里面果然是个很大的厅堂。但可惜厅堂内除了中央的一张羊皮纸和一根精致的石笔,还有周围几具骷髅外什么也没有。 难道这就是王室的遗产? 小 FF 不信,他仔细阅读了羊皮纸上的内容后发现,里面书写的古代人一直没能解出的难题, 解除这道题目的人只要将答案用石笔写到这张羊皮纸上就能到达王室的宝藏室了。而当小 FF 拿起石笔后,刚刚打开的巨石门突然关上了。 这时小 FF 意识到原来那几具骷髅是在他之前到这里的冒险者,恐怕是因为没能破解这道题而困死在这里了。 小 FF 越想越害怕, 急忙联系到了你,为了能保命,他甚至愿意和你五五分……看来你不得不再次帮他了。 羊皮纸上的问题如下:
已知 x, y 为整数,且满足以下两个条件:
\1. x, y ϵ [1…k], 且x,y,k ϵ Z;
\2. (x^2 – xy – y^2)^2 = 1
给你一个整数 k, 求一组满足上述条件的 x ...
2265.最接近神的人
input:Sophist.in output:Sophist.out
时间限制: 1000 ms 空间限制: 60000 KB
题目描述
破解了符文之语,小 FF 开启了通往地下的道路。 当他走到最底层时, 发现正前方有一扇巨石门, 门上雕刻着一副古代人进行某种活动的图案。而石门上方用古代文写着“神的殿堂“。小FF 猜想里面应该就有王室的遗产了。但现在的问题是如何打开这扇门……
仔细研究后, 他发现门上的图案大概是说:古代人认为只有智者才是最容易接近神明的。 而最聪明的人往往通过一种仪式选拔出来。 仪式大概是指,即将隐退的智者为他的候选人写下一串无序的数字, 并让他们进行一种操作, 即交换序列中相邻的两个元素。 而用最少的交换次数使原序列变成不下降序列的人即是下一任智者。
小 FF 发现门上同样有着 n 个数字。于是他认为打开这扇门的秘诀就是找到让这个序列变成不下降序列所需要的最小次数。但小 FF 不会……只好又找到了你,并答应事成之后与你三七分……
输入
第一行为一个整数 n,表示序列长度
第二行为 n 个整数,表示序列中 ...
2127.电子表格
input:excel.in output:excel.out
时间限制: 1000 ms 空间限制: 262144 KB
题目描述
也许你用过Microsoft Excel之类的电子制表软件,这类软件最令人称道的就是强大的公式计算功能。现在希望你也来实现一个具有最基本功能的电子制表软件。表格共有m列(0 < m • 26),从左到右依次用A到Z的大写英文字母表示;有n行(0 < n <100),从上到下依次用1到100的整数表示。这样,每一个单元格的位置就可以唯一地用它所在的列和行表示出来,例如从左到右第3列,从上到下第5行的单元格就可以用“ C5”来表示(注意,这里字母和数字中间没有空格)。
现在对表格进行了一系列的操作,这些操作主要就是赋值和查询。定义操作的输入规则
如下:
1.每个操作占一行,根据操作类型的不同,每行中可能有二至四个用空格隔开的“单词”;
2.每行的第一个单词指定了该操作涉及的单元格的位置;
3.每行的第二个单词指定了相应的操作,可能是: input,output,sum,avg
(1).如果第二个单词是input,表示接下来的一个整数是 ...