G : 你说啥,又让我做A+B?
比赛链接:http://oj.nyist.me/OJ/contest_problemset.php?cid=1036&showmsg=1
题目描述
第二次招新开始了,又轮到了riba2534学长出题,学长真的想不出出什么题,于是你们还是继续做一做a+b吧
先看一下下面的字符画(头离电脑远一点):
##### ....# ##### ##### #...# ##### ##### ##### ##### #####
#...# ....# ....# ....# #...# #.... #.... ....# #...# #...#
#...# ....# ....# ....# #...# #.... #.... ....# #...# #...#
#...# ....# ##### ##### ##### ##### ##### ....# ##### #####
#...# ....# #.... ....# ....# ....# #...# ....# #...# ....#
#...# ....# #.... ....# ....# ....# #...# ....# #...# ....#
##### ....# ##### ##### ....# ##### ##### ....# ##### #####
#...# ....# ....# ....# #...# #.... #.... ....# #...# #...#
#...# ....# ....# ....# #...# #.... #.... ....# #...# #...#
#...# ....# ##### ##### ##### ##### ##### ....# ##### #####
#...# ....# #.... ....# ....# ....# #...# ....# #...# ....#
#...# ....# #.... ....# ....# ....# #...# ....# #...# ....#
##### ....# ##### ##### ....# ##### ##### ....# ##### #####
没错,就是数字从0~9,为了让这道题的难度简单一点,我们约定,两个数相加,第一个数为一个整数a,第二个数b是一个0到9之间的整数,以上述字符画的方式给出,求a+b的和
输入
多组测试数据,当a为0时程序结束
第一行给出一个数 a(1<=a<=2^65)
接下来的7行以字符画的方式给出b(0<=b<=9)
输出
输出两个数的和
样例输入
复制
1
#####
#...#
#...#
#####
....#
....#
#####
100000000000000000
#####
#....
#....
#####
#...#
#...#
#####
0
样例输出
复制
10
100000000000000006
提示
注意看样例
找特殊点。。
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int main()
{
unsigned long long b;
char a[10][10];
while(~scanf("%llu",&b))
{
getchar();
if(b==0) break;
for(int i=0;i<7;i++)
{
for(int j=0;j<5;j++)
scanf("%c",&a[i][j]);
getchar();
}
if(a[0][1]=='#'&&a[3][0]=='#'&&a[3][1]=='.')
printf("%llu\n",b);
else if(a[0][0]=='.') printf("%llu\n",b+1);
else if(a[1][0]=='.'&&a[3][0]=='#'&&a[4][0]=='.')
printf("%llu\n",b+3);
else if(a[0][0]=='#'&&a[0][1]=='.')
printf("%llu\n",b+4);
else if(a[1][4]=='.'&&a[4][0]=='.')
printf("%llu\n",b+5);
else if(a[1][4]=='.'&&a[4][0]=='#')
printf("%llu\n",b+6);
else if(a[0][1]=='#'&&a[6][0]=='.')
printf("%llu\n",b+7);
else if(a[1][4]=='#'&&a[3][1]=='#'&&a[4][0]=='#'&&a[4][4]=='#')
printf("%llu\n",b+8);
else if(a[1][0]=='#'&&a[4][0]=='.'&&a[0][1]=='#'&&a[1][4]=='#')
printf("%llu\n",b+9);
else printf("%llu\n",b+2);
}
return 0;
}