总结2016.10.7

来源:互联网 发布:50道js经典逻辑题 编辑:程序博客网 时间:2024/06/06 09:59

题目描述

     小王同学在坐标系的(0,0)处,但是他找不到考试的试场,于是一边走路一边问路,每个被问路的人会告诉他一个指令(包括走路或转弯)。
     现在请编一个程序,显示他每次走路后的坐标(转弯后坐标不变,所以不必显示坐标)。
     初始方向向y轴正半轴!!

 

输入

第一行一个数n,表示有n个指令。
接下来n行,每行一个指令,每个指令是“left” 或“right”或数字,分别表示左转、右转、向前走几步。

输出

对于每个是数字的指令,输出一行一个坐标,表示走完后的坐标。
如果只是原地转弯,从开始到最后从来不走动,则输出“(0,0)”。

样例输入

62left2rightright3

样例输出

(0,2)(-2,2)(1,2)

数据范围限制

【数据范围】
对于50 %的数据,0 < n <= 20。
对于100 %的数据,0 <n <= 500, 所有数据都在longint范围内。

题目描述

平面上有n个没有公共点的圆。你要从点(X1,Y1)走到(X2,Y2)。问你最少要经过多少圆的边界。保证这两个点都不在圆的边界上。

输入

第一行一个整数n。
接下来三行,每行n个整数,之间有1个空格分开,分别表示n个圆的圆心坐标xi、yi和半径r,格式如下:
x1,x2,„,xi,„,xn
y1,y2,„,yi,„,yn
r1,r2,„,ri,„,rn
最后一行四个整数X1,Y1,X2,Y2,之间有1个空格分开,表示起点(X1,Y1)和终点(X2,Y2)。

输出

输出一行一个整数,意义如上。

样例输入

【样例输入1】1002-5 1 5 1【样例输入2】

样例输出

【样例输出1】0【样例输出2】1

数据范围限制

1<=n<=50。
-1000<=xi,yi<=1000,1<=ri<=1000。
-1000<=X1,Y1,X2,Y2<=1000。

题目描述

      星期五下午,放学的下课铃声响了,周末到了,同学们非常高兴。但今天小Y高兴不起来,因为老师布置了一道比较烦的幂运算题。
      一般情况下,计算机所能够处理的小数的范围和精度都是非常有限的。小Y的老师给出了一个小数a和指数b,让小Y求ab。小Y觉得手算非常麻烦,于是很不高兴,希望你能编程帮助他计算。

输入

输入文件exp.in仅包含两行。
第一行是a。
第二行是b。
a>0,a的长度不超过10位(不包括小数点),保证这个数是X.Y的形式,其中X一定存在,但Y可能没有(此时小数点也不会有)。a可能有多余的前导零或尾零。
1 <= b <= 25,且为整数。

输出

输出文件exp.out仅包含一行,即ab的结果。
整数部分前面有0必须去掉,小数部分末尾有0也必须去掉。例如000.10100需要变为.101(整数部分为0也去掉)。如果结果是整数则直接输出整数形式即可。

样例输入

1.010012

样例输出

1.126825030131969720661201

数据范围限制

题目描述

       考虑一个给出为N维空间“箱子”的尺度问题。当有两个尺度时,箱子(2,3)表示这个箱子长度为2个单位,宽度为3个单位。当有三个尺度时,箱子(4,8,9)表示这个箱子长度是4个单位,宽度是8个单位,高度是9个单位。当它有6个尺度时,也许,它表现的是不易了解的箱子(4,5,6,7,8,9);但是我们能分析这个箱子的特性,例如它的各个尺度。
       在这个问题中你将分析许多关于N维空间的箱子,并解决这些箱子的最大的嵌套问题。箱子D =(d1,d2,„,dn),箱子E = (e1,e2,„,en),di和ei都可以重新排列整理,那么当它们重新排列整理后,箱子D所有的尺度都小于箱子E所有的尺度,那么箱子D可以放入箱子E中。
        例如,箱子D =(2,6),当D重新排列整理成(6,2),则可放入箱子E =(7,3)中,此时D每个尺度都小于E的相应尺度。如果D经过重新整理后D =(9,7,5,3),则不可以放入箱子E =(10,8,6,2)中,但是F =(9,5,7,1),重新整理后F =(9,7,5,1),即符合F放入E的条件。

输入

    输入文件boxes.in中,第一行有两个整数,中间有1个空格,第一个整数为箱子的总
数K,第二个整数为每个箱子的空间维数N。
   以下K行,每行表示一个箱子,有N个尺度数据,数据间用一个或数个空格分开。

输出

输出文件Boxes.out仅包含一行一个整数,输出最大箱子嵌套数目。

样例输入

5 23 78 105 29 1121 18

样例输出

5

数据范围限制

K ≤ 1000,N ≤ 10。
每个维度的值在longint范围内。

2016.10.7

考试思路:
T1
比较简单,就是用一个计数器来判断现在面对那边,然后如果要走的话就执行相应的操作,就可以啦。
T2
比赛时根本看不懂题目,于是弃了。
T3
就是先除去前面和后面多余的零,然后再记录下小数点的位置,接着进行高精度乘法,最后再计算一下小数点应该在哪个位置,再插入就好了。
T4
就是用了一个深搜,结构很简单,然后时间超限,也有50分。


正确思路:
T1
同上。
T2
其实很简单的,就是每个圆对于两个点都会三种情况,第一种是两个都在外面,那就不用管,二是两个都在里面,那样也不用管,只有一个在圆圈外面,一个在圆圈里面时才需要把答案加一,判断在圆圈里面还是外面只要用一下勾股定理算一下就好啦。
T3
大致思路同上,就是比赛时出了点小问题而已。
T4
动态规划。一开始先每一行排个序,从大到小还是从小到大都可以,而之后再按第一个尺度为关键字从小到大排个序,接着dp,f[i]表示装到第i个,能装的最多箱子数,f[i]初始值为1(每个箱子至少还有自己可以算进结果),对于第i个箱子,找它前面能装下的,并且值为最大的一个,加上自己,最后答案为最大的f[i]。


总结:这次考得很不错,230分,第五名,前面都是初二初三的,感觉很满意,但也要继续努力,加油!
0 0
原创粉丝点击