培训2



 Excel是最常用的办公软件。每个单元格都有唯一的地址表示。比如:第12行第4列表示为:“D12”,第5行第255列表示为“IU5”。
    
    事实上,Excel提供了两种地址表示方法,还有一种表示法叫做RC格式地址。 第12行第4列表示为:“R12C4”,第5行第255列表示为“R5C255”。

    你的任务是:编写程序,实现从RC地址格式到常规地址格式的转换。

【输入、输出格式要求】

    用户先输入一个整数n(n<100),表示接下来有n行输入数据。

    接着输入的n行数据是RC格式的Excel单元格地址表示法。

    程序则输出n行数据,每行是转换后的常规地址表示法。

    例如:用户输入:
2
R12C4
R5C255

    则程序应该输出:
D12
IU5

【注意】

    请仔细调试!您的程序只有能运行出正确结果的时候才有机会得分!
    
    在评卷时使用的输入数据与试卷中给出的实例数据可能是不同的。





http://paste.ubuntu.com/11110321/




串的处理
在实际的开发工作中,对字符串的处理是最常见的编程任务。本题目即是要求程序对用户输入的串进行处理。具体规则如下:
1.    把每个单词的首字母变为大写。
2.    把数字与字母之间用下划线字符(_)分开,使得更清晰
3.    把单词中间有多个空格的调整为1个空格。

例如:
用户输入:
you and     me what  cpp2005program
则程序输出:
You And Me What Cpp_2005_program

用户输入:
this is     a      99cat
则程序输出:
This Is A 99_cat

我们假设:用户输入的串中只有小写字母,空格和数字,不含其它的字母或符号。每个单词间由1个或多个空格分隔。
假设用户输入的串长度不超过200个字符。

http://paste.ubuntu.com/11113591/



***********            1 1
*         *
* ******* *            3 3
* *     * *
* * *** * *
* * * * * *
* * *** * *
* *     * *
* ******* *
*         *
***********

观察这个图形,它是由一系列正方形的星号方框嵌套而成。
在上边的例子中,最外方框的边长为11。

本题的任务就是从标准输入获得一个整数n(1 程序则生成嵌套着的回字型星号方框。其最外层方框的边长为n

例如:
输入:
5
程序输出:
*****
*   *
* * *
*   *
*****

输入:6
程序输出:
******
*    *
* ** *
* ** *
*    *
******

http://paste.ubuntu.com/11148065/




在某些应用中,为了支持灵活性,往往用到自定义的公式。

比如,有如下的原始公式集合:

    int add(int x, int y):  返回x与y的和
    
    int add(int x, int y, int z):  返回x,y,z三个数的和
    
    int min(int x, int y):  返回x,y中较小的值
    
    int max(int x, int y):  返回x,y中较大的值

    int doubleMe(int x):  返回 x 的2倍

给出一个自定义公式串

add(min(5,3),max(2,8),add(1,doubleMe(1)))

通过手工计算可以得出结果为:14

本题的任务是:编写一个解析程序,能够对由上述原始公式任意组合出来的公式计算其结果。也就是输入一个自定义公式串,输出它的计算结果(可以不考虑输入公式本身有语法错误的情况)。

输入的公式串中可以含有多余的空格,类似:

add( min(5, 3) , max(2 , 8) )  也是合法的公式。


程序输入:公式串
程序输出:该公式的计算值


http://paste.ubuntu.com/11166286/






    某少年宫引进了一批机器人小车。可以接受预先输入的指令,按指令行动。小车的基本动作很简单,只有3种:左转(记为L),右转(记为R),向前走若干厘米(直接记数字)。


    例如,我们可以对小车输入如下的指令:


    15L10R5LRR10R20


    则,小车先直行15厘米,左转,再走10厘米,再右转,...


    不难看出,对于此指令串,小车又回到了出发地。


    你的任务是:编写程序,由用户输入指令,程序输出每条指令执行后小车位置与指令执行前小车位置的直线距离。


【输入、输出格式要求】


    用户先输入一个整数n(n<100),表示接下来将有n条指令。


    接下来输入n条指令。每条指令只由L、R和数字组成(数字是0~100之间的整数)


    每条指令的长度不超过256个字符。


    程序则输出n行结果。


    每条结果表示小车执行相应的指令前后位置的直线距离。要求四舍五入到小数后2位。


    例如:用户输入:
5
L100R50R10
3LLL5RR4L12
LL
100R
5L5L5L5


    则程序输出:
102.96
9.06
0.00
100.00
0.00




【注意】


    请仔细调试!您的程序只有能运行出正确结果的时候才有机会得分!


http://paste.ubuntu.com/11169103/




你听说过角谷猜想吗?
 任意的正整数,比如 5, 我们从它开始,如下规则计算:
如果是偶数,则除以2,如果是奇数,则乘以3再加1.
如此循环,最终必会得到“1” !


 1 2 3 4  5 6  7
 2 4 8 16 5 10 3


比如 5 的处理过程是:
5
16
8
4
2
1


一个正整数经过多少步才能变成1, 称为角谷步数。
对于5而言,步数也是5
对于1,步数为0


本题的要求是,从标准输入给定一个整数n(1 求满足这个角谷步数的最小的正整数


例如:


输入:
3
则输出:
8


输入:
4
则输出:
16


输入:
7
则输出:
3


http://paste.ubuntu.com/11205865/




考虑方程式:a^3 + b^3 = c^3 + d^3
其中:“^”表示乘方。a、b、c、d是互不相同的小于30的正整数。
这个方程有很多解。比如:
a = 1,b=12,c=9,d=10 就是一个解。因为:1的立方加12的立方等于1729,而9的立方加10的立方也等于1729。
当然,a=12,b=1,c=9,d=10 显然也是解。
如果不计abcd交换次序的情况,这算同一个解。
你的任务是:找到所有小于30的不同的正整数解。把a b c d按从小到大排列,用逗号分隔,每个解占用1行。比如,刚才的解输出为:
1,9,10,12


不同解间的顺序可以不考虑。


http://paste.ubuntu.com/11256330/





你可能感兴趣的:(随笔)