Posts Tagged 'ACM'

An easy problem

Posted by Danfi on 2010-03-31 添加评论

Problem Description
we define f(A) = 1, f(a) = -1, f(B) = 2, f(b) = -2, … f(Z) = 26, f(z) = -26;
Give you a letter x and a number y , you should output the result of y+f(x).

Input
On the first line, contains a number T.then T lines follow, each line is a case.each case contains a letter and a number.

Output
for each case, you should the result of y+f(x) on a line.

Sample Input
6
R 1
P 2
G 3
r 1
p 2
g 3

Sample Output
19
18
10
-17
-14
-4

阅读全文…

整除的尾数

Posted by Danfi on 2010-02-04 添加评论

Problem Description
一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢?

Input
输入数据有若干组,每组数据包含二个整数a,b(0 < a < 10000, 10 < b < 100),若遇到0 0则处理结束。

Output
对应每组数据,将满足条件的所有尾数在一行内输出,格式见样本输出。同组数据的输出,其每个尾数之间空一格,行末没有空格。

Sample Input
200 40
1992 95
0 0

Sample Output
00 40 80
15

阅读全文…

小明A+B

Posted by Danfi on 2010-01-30 添加评论

Problem Description
小明今年3岁了, 现在他已经能够认识100以内的非负整数, 并且能够进行100以内的非负整数的加法计算.
对于大于等于100的整数, 小明仅保留该数的最后两位进行计算, 如果计算结果大于等于100, 那么小明也仅保留计算结果的最后两位.

例如, 对于小明来说:
1) 1234和34是相等的
2) 35+80=15

给定非负整数A和B, 你的任务是代表小明计算出A+B的值.

Input
输入数据的第一行为一个正整数T, 表示测试数据的组数. 然后是T组测试数据. 每组测试数据包含两个非负整数A和B(A和B均在int型可表示的范围内).

Output
对于每组测试数据, 输出小明A+B的结果.

Sample Input
2
35 80
15 1152

Sample Output
15
67

阅读全文…

手机短号

Posted by Danfi on 2010-01-28 添加评论

Problem Description
大家都知道,手机号是一个11位长的数字串,同时,作为学生,还可以申请加入校园网,如果加入成功,你将另外拥有一个短号。假设所有的短号都是是 6+手机号的后5位,比如号码为13512345678的手机,对应的短号就是645678。
现在,如果给你一个11位长的手机号码,你能找出对应的短号吗?

Input
输入数据的第一行是一个N(N <= 200),表示有N个数据,接下来的N行每一行为一个11位的手机号码。

Output
输出应包括N行,每行包括一个对应的短号,输出应与输入的顺序一致。

Sample Input
2
13512345678
13787654321

Sample Output
645678
654321

  1. #include<stdio.h>
  2. int main()
  3. {
  4.     int n;
  5.     char a[11];
  6.     scanf("%d",&n);
  7.     while(n--)
  8.     {
  9.         scanf("%s",a);
  10.         printf("6%s\n",a+6);
  11.     }
  12. }

Lowest Common Multiple Plus(最小公倍数)

Posted by Danfi on 2010-01-27 添加评论

Problem Description
求n个数的最小公倍数。

Input
输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数。

Output
为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个32位的整数。

Sample Input
2 4 6
3 2 5 7

Sample Output
12
70

阅读全文…

A|B?

Posted by Danfi on 2010-01-24 添加评论

Problem Description
正整数A是否能被正整数B整除,不知道为什么xhd会研究这个问题,来帮帮他吧。

Input
输入数据的第一行是一个数据T,表示有T组数据。
每组数据有两个正整数A和B(A,B<10^9)。

Output
对于每组输入数据,输出"YES"表示可以被整除,"NO"表示不能被整除。

Sample Input
2
4 2
5 3

Sample Output
YES
NO

  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int t,a,b,i,s;
  5.     scanf("%d",&t);
  6.     for(i=0;i<t;i++)
  7.     {
  8.         scanf("%d%d",&a,&b);
  9.             if(a<b)
  10.             {
  11.                 s=a;
  12.                 a=b;
  13.                 b=s;
  14.             }
  15.         if(a%b==0)
  16.             printf("YES\n");
  17.         else
  18.             printf("NO\n");
  19.     }
  20.     return 0;
  21. }