青少年编程知识记录 codecoming

【题解】宴会

【题目描述】

今人不见古时月,今月曾经照古人。

梦回长安,大唐风华,十里长安花,一日看尽。 

唐长安城是当时世界上规模最大、建筑最宏伟、规划布局最为规范化的一座都城。其营建 制度规划布局的特点是规模空前、创设皇城、三城层环、六坡利用、布局对称、街衢宽阔、坊 里齐整、形制划一、渠水纵横、绿荫蔽城、郊环祀坛。而所谓的十里长安街,位于长安城的中 轴线上,即唐长安城的朱雀大街,又称承天门大街。唐朝官员们住在各个“坊”里,上朝下朝 都需要通过朱雀大街。

为了保持各大家族的联系和友谊,各官员往往会每月办一次宴会。为了方便描述,我们把 朱雀大街看成一个数轴,各官员所居住的“坊”缩略为数轴上的一个坐标点。大家决定选一处 地点(该地点是数轴上的某一个点,不一定坐标点)办宴会。由于唐朝宵禁严格,大家又都希 望交流时间尽可能长,因此想要使宴会开始时间尽可能早。又因为大唐注重礼仪,因此,参加 宴会的官员会花一定时间盛装打扮过后才前往宴会地点(不一定是坐标点)。 更具体地,一条纵向的街道上(相当于一维坐标)有 n 个人居住,其中第i个人居住在xi (非负整数) 位置(坐标点)上。每月他们会选择在 x0(数轴上的某一个点,不一定坐标点) 出举办宴会。 已知第 i 个人从 xi 出发前往宴会地点 x0 处需要花费 |xi-x0| 的时间,另外,他还需要花费 ti的时间进行打扮,换言之,他共需要花费 |xi-x0| + ti 的时间到达宴会举办处。 假设初始时刻为 0 。

这 n 个人开始打扮和出发前往宴会处,他们想要使得宴会的开始时间 尽可能早,于是向你求助,请你帮助他们确定好最优的宴会举办地点 x0。 注:|xi-x0| 表示xi 与 x0 之差的绝对值,且题目中 n 个人的居住地点坐标均为整数。

【输入描述】

第一行一个正整数 T,表示测试数据的组数。 

接下来对于每组测试数据(注意:每组测试数据有 3 行数据,以下共 3*T 行数据):

 第一行一个正整数 n,表示总官员人数。

 第二行共 n 个非负整数x1,x2,x3,...xn 分别表示这 n 个人在数轴上的坐标。

 第三行共 n 个非负整数t1,t2,t3...tn分别表示这 n 个人出发前的打扮时间

【输出描述】

共输出 T 行数据,对于每组测试数据,输出一行一个实数(如果是整数按整数输出,如果有 小数,保留 1 位小数输出),表示使宴会开始时间最早的最优举办地点坐标x0。(很显然,x0是唯一的)

【样例输入】

7  1  0  3  2  3 1  0 0  2  1 4  0 0  3  1 2 3  0 0 0  3  1 2 3  4 1 2  3  3 3 3  5 3 3  6  5 4 7 2 10 4  3 2 5 1 4 6

【样例输出】

0  2  2.5  2  1  3  6

【样例说明】

初始时刻为 0。 对于第一组测试数据只有 1 个人,坐标为 0,打扮时间为 3,很显然 x0 就定在坐标 0 处,使 得宴会开始时间为 3 且最早。 

对于第二组测试数据有 2 个人,坐标分别为 3、1,打扮时间均为 0,很显然 x0 定在坐标 2 处,使得宴会开始时间为 1 且最早。 

对于第三组测试数据有 2 个人,坐标分别为 1、4,打扮时间均为 0,很显然 x0 定在坐标 2.5 处,使得宴会开始时间为 1.5 且最早。

【数据范围】

对于 30% 的数据,T=1,1<=n<=100, 0<=xi, ti<=1000;

对于 60% 的数据,T<=n<=10^4, 0<=xi, ti<=10^5; 

对于100%的数据,1<=T<=10^3, 1<=n<=10^5, 0<=xi, ti<=10^8,且保证所有测试数据的n加起来都不超过2*10^5



【题解】高精度除法

【题目描述】

高精除以高精,求它们的商和余数。

【输入描述】

输入两个低于300位的正整数。

【输出描述】

输出商和余数。

【样例输入】

1231312318457577687897987642324567864324567876543245671425346756786867867867  1231312318767141738178325678412414124141425346756786867867867

【样例输出】

999999999748590  179780909068307566598992807564736854549985603543237528310337

标签: 高精度

作者:亿万年的星光 分类:题解目录 浏览:

【题解】大整数乘法

【题目描述】

求两个不超过200位的非负整数的积。

【输入描述】

有两行,每行是一个不超过200位的非负整数,没有多余的前导0。

【输出描述】

一行,即相乘后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。

【样例输入】

12345678900  98765432100

【样例输出】

1219326311126352690000

标签: 高精度

作者:亿万年的星光 分类:题解目录 浏览:

【题解】切比雪夫距离

【题目描述】

小C有一个平面!它发现了平面上的两个点,请你求出求它们之间的切比雪夫距离。切比雪夫距离定义为x与y方向坐标差的绝对值较大值。

【输入描述】

四个整数,a,b,c,d。坐标为(a,b)与(c,d)

【输出描述】

输出这两个点的切比雪夫距离。

【样例输入】

0 0 3 4

【样例输出】

4

【数据范围】

0<=a,b,c,d<=100
作者:亿万年的星光 分类:题解目录 浏览:

【题解】吃糖果

【题目描述】

小明终于从小红手里赢走了所有的糖果,小明转变吃掉所有糖果,但是小明吃糖果有个特殊癖好,就是不喜欢将一样的糖果放在一起吃,喜欢先吃一种,下一次吃另外一种。试问小明是否存在一种吃糖果的顺序使得他能把所有的糖果都吃完。



【输入描述】

第一行有一个整数T,接下来T组数据,每组数据占两行,第一行是一个整数N (0<N<=1000000),第二行是N个整数,表示N种糖果的数目Mi(0<Mi<=1000000)



【输出描述】

对于每组数据,输出一行,包含一个“YES”或者“NO”。

【样例输入】

2  3  4 1 1  5  5 4 3 2 1

【样例输出】

NO  YES

【题解】大数取模

【题目描述】

求m%n。

【输入描述】

两个数,m和n。

【输出描述】

m模n的值。

【样例输入】

3

【样例输出】

2

【数据范围】

对于30%的数据, 1<m<10^18

对于70%的数据, m>10^18

【题解】求次方和

【题目描述】

    求解 (2^0 + 2^1 + 2^2+ ... + 2^n) % 2333

【输入描述】

    一行,一个整数n。

【输出描述】

    一行,表达式的正确结果

【样例输入】

2

【样例输出】

7

【题解】数字的选择

【题目描述】

有n个非负整数,请从这n个非负整数中,选出m个数,在不改变m个数的顺序的情况下,构成一个新数列,要求该数列的中相邻两个数的差值绝对值的和尽可能小。

请问,这个最小的差值绝对值的和是多少?

比如:有5个数是2 1 8 5 9,如果从中选3个数,不改变顺序的情况下,要求相邻2个数的差值绝对值的和最小,选数方法可以是:2 1 5,差值绝对值的和是|1-2|+|5-1|=5。

【输入描述】

第1行输入2个整数,分别是n和m。(2≤m≤n≤100)

第2行,有n个非负整数,数字之间用空格隔开。

【输出描述】

按题意输出最小的差值绝对值的和。(本题保证计算出来的结果,在int的范围内)

【样例输入】

5 3  2 1 8 5 9

【样例输出】

5



作者:亿万年的星光 分类:题解目录 浏览:

【题解】导弹拦截

【题目描述】

某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。

输入导弹的枚数和导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数,每个数据之间至少有一个空格),计算这套系统最多能拦截多少导弹。

【输入描述】

第1行有1个整数n,代表导弹的数量。(n<=1000)

第2行有n个整数,代表导弹的高度。(雷达给出的高度数据是不大于30000的正整数)

【输出描述】

第一行:最多能拦截的导弹数;

第二行:要拦截所有导弹最少要配备的系统数。

【样例输入】

8  389  207  155  300  299  170  158  65

【样例输出】

6

标签: 动态规划

作者:亿万年的星光 分类:题解目录 浏览:

【题解】分糖果

【题目描述】

小A在生日这天收到了哥哥送来的一盒糖果,这盒糖果共有M个,小A要把这盒糖果放到N个盘子中(允许有盘子不放),请问,有多少种不同的放法?

请注意:数值相同,顺序不同,我们视为是相同的放法,比如,1 1 6,和1 6 1、6 1 1,我们视为是同一种放法。

【输入描述】

输入包含多组测试样例。每组输入的第一行是一个整数t,表示数据有多少组。(t<=10)

接下来t行,每行输入两个整数M和N,代表有糖果的数量和盘子的数量。

(M和N均≥0,且≤20)

【输出描述】

对于每对输入的M和N,输出有多少种放法。

【样例输入】

1  7 3

【样例输出】

8



标签: 动态规划

作者:亿万年的星光 分类:题解目录 浏览: