A -Repeating Characters
A题看样例就可以写了,直接重复就可以了:
代码:
#include
#include
#include
#include
#include
B -The Rascal Triangle
B题有好几种推法的,我是直接从每一行的第一个开始推,对于第i行,它的第二个数字==1+(n-1)。第二个数==1+(n-1)+(n-3),就这样一直推就可以了,我写的是分成前后两部分算,后来发现直接不管前半部分还是后半部分都适用这个公式,一路算过去就可以了,一个for:
代码:
#include
#include
#include
#include
#include
D -Decoding EDSAC Data
D题麻烦的题目,我们一直在搞C题,C题虽然说是和D题是相反的,但是我们的方法在精度这块儿卡死了。好多D都
过了,就先去搞D。D题我们是直接一对一的把这些符号转换成二进制,再把二进制转换成小数(-1.0特判)。一直
没有对负数的二进制求补,所以不对,后来对负数的二进制求了补就出答案了。可是写的太少,在怎么输出这里卡
了好久,最后还是先确定了这个数字应该输出几位,用C++的输出搞定了:
代码:
#include
#include
#include
#include
#include
G -Rancher's Gift
这道题目是一道几何题目,比赛的时候没看懂题目,纠结了就没有做,后来看了,额,就是赤裸裸的计算,给出
A,B,C, D的坐标求出这五个多变形的面积和中间那个四边形的周长。刚刚A掉了,我的方法比较烦,求出了四个
交点的坐标,推导的时候比较繁一点,推出来就是套公式了。剩下的就是算面积而已。分成三角形来算。水了
代码:
#include
#include
#include
#include
#include
H -Maximum in the Cycle of 1
H题就是一个排列组合的问题,对于n,对于找到1之前的最大的数字K,求这样的序列有多少个。我们分情况讨论如
果是1的话,那么就是(n-1)!。然后当k大于1的时候,我们就求和,1-k-1一步的情况,然后1-x-k-1, 1-k-x-1
两步的情况,1-x-y-k-1,1-x-k-y-1,1-y-x-k-1,1-y-k-x-1,三步的情况,就这样一直加下去就可以了,其余的数
字全排列就行,就是i步的情况A[i]*C[k-2][i-1]*A[n-i-1];
代码:
#include
#include
#include
#include
#include