题目链接:http://acm.swjtu.edu.cn/JudgeOnline/showproblem?problem_id=1962

问题思路:考察编程基础的问题,涉及到字符串转为数字的问题。

代码如下:

#include <stdio.h>
#include <string.h> #define MAX_N 1000 int num_a[MAX_N], num_b[MAX_N];
int digit_a, digit_b;
char character[][MAX_N];
char example[][] =
{
"+-+ ++-++-++ ++-++-++-++-++-+",
"| | | | || || | || || |",
"+ + ++-++-++-++-++-+ ++-++-+",
"| | || | | || | || | |",
"+-+ ++-++-+ ++-++-+ ++-++-+",
}; int CharToNum(int char_i, int exap_i)
{
int c_i = char_i;
int e_j = exap_i; if (character[][c_i] == ' ' &&
character[][c_i + ] == ' ' &&
character[][c_i + ] == ' ')
return -; for (int i = ; i < ; ++i)
{
for (int j = ; j < ; ++j)
{
if (character[i][c_i + j] !=
example[i][e_j + j])
return ;
}
} return ;
} void output(int ans)
{
int digit = ;
int num[MAX_N];
int divide = ans;
int rest = ; memset(num, , sizeof(num));
for (int i = ; divide != || rest != ; ++i)
{
num[i] = divide % ;
divide /= ;
digit = i;
} for (int i = ; i < ; ++i)
{
for (int j = digit; j >= ; --j)
{
int num_line = num[j] * ; for (int k = ; k < ; ++k)
printf("%c", example[i][num_line + k]); if (j == )
printf("\n");
else
printf(" ");
}
}
} int main()
{
int len = ;
int flag = false; for (int i = ; i < ; ++i)
gets(character[i]); len = strlen(character[]); for (int i = ; i < len; i += )
{
for (int j = ; j < ; j += )
{
int result = CharToNum(i, j); if (result == -)
{
flag = true;
break;
} if (!flag && result != )
{
num_a[digit_a++] = j / ;
break;
}
else
if (flag && result != && result != -)
{
num_b[digit_b++] = j / ;
break;
}
}
} int a = , b = ; for (int i = ; i < digit_a; ++i)
a = a * + num_a[i];
for (int i = ; i < digit_b; ++i)
b = b * + num_b[i]; output(a + b); return ;
}

swjtu 1962 A+B(模拟)的更多相关文章

  1. swjtu 2213 A Game About Cards(模拟题)

    题目链接:http://acm.swjtu.edu.cn/JudgeOnline/showproblem?problem_id=2213 思路分析:该问题与约瑟夫问题相似:每次将前n张牌放到队列的最后 ...

  2. JS模拟CSS3动画-贝塞尔曲线

    一.什么是贝塞尔曲线 1962年,法国工程师皮埃尔·贝塞尔(Pierre Bézier),贝塞尔曲线来为为解决汽车的主体的设计问题而发明了贝塞尔曲线.如今,贝赛尔曲线是计算机图形学中相当重要的一种曲线 ...

  3. App开发:模拟服务器数据接口 - MockApi

    为了方便app开发过程中,不受服务器接口的限制,便于客户端功能的快速测试,可以在客户端实现一个模拟服务器数据接口的MockApi模块.本篇文章就尝试为使用gradle的android项目设计实现Moc ...

  4. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  5. Python 爬虫模拟登陆知乎

    在之前写过一篇使用python爬虫爬取电影天堂资源的博客,重点是如何解析页面和提高爬虫的效率.由于电影天堂上的资源获取权限是所有人都一样的,所以不需要进行登录验证操作,写完那篇文章后又花了些时间研究了 ...

  6. HTML 事件(四) 模拟事件操作

    本篇主要介绍HTML DOM中事件的模拟操作. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三) 事件流与事件委托 4.  ...

  7. 模拟AngularJS之依赖注入

    一.概述 AngularJS有一经典之处就是依赖注入,对于什么是依赖注入,熟悉spring的同学应该都非常了解了,但,对于前端而言,还是比较新颖的. 依赖注入,简而言之,就是解除硬编码,达到解偶的目的 ...

  8. webapp应用--模拟电子书翻页效果

    前言: 现在移动互联网发展火热,手机上网的用户越来越多,甚至大有超过pc访问的趋势.所以,用web程序做出仿原生效果的移动应用,也变得越来越流行了.这种程序也就是我们常说的单页应用程序,它也有一个英文 ...

  9. javascript动画系列第一篇——模拟拖拽

    × 目录 [1]原理介绍 [2]代码实现 [3]代码优化[4]拖拽冲突[5]IE兼容 前面的话 从本文开始,介绍javascript动画系列.javascript本身是具有原生拖放功能的,但是由于兼容 ...

随机推荐

  1. The type javax.servlet.http.HttpServletRequest cannot be resolved.

    The type javax.servlet.http.HttpServletRequest cannot be resolved. It is indirectly referenced from ...

  2. easyui 验证控件 tooltip message显示位置

    找了半天才发现是这个属性在控制,tipPosition:'left',官网那个demo,误人子弟.

  3. 使用 http://httpbin.org/ 验证代理地址

    发现一个很方便的工具,在Linux 下使用  curl  http://httpbin.org/   可以返回当前使用的一些网络信息

  4. ODI学习笔记2--ODI产品架构

    ODI学习笔记2--ODI产品架构 ODI产品架构: ODI提供了以下几种管理工具:Designer 用于定义数据转换逻辑,这是最常用的开发工具,大部分的开发任务,包括data store的定义,in ...

  5. phome_enewsclass 数据表字段解释(栏目主表)

    字段名 类型 解释 附加说明 classid smallint(6) 栏目ID   bclassid smallint(6) 父栏目ID   classname varchar(50) 栏目名称   ...

  6. 安装CAD出现Error 1904.Module的解决方法

    在安装AutoCAD2008时,安装过程中出现了一个小错误,虽然说不影响使用,也不影响功能,但还是需要把这个问题解决,今天就和大家分享解决这个问题的方法. 错误描述 会在安装过程中出现错误提示:Err ...

  7. 7篇Model View和4篇双缓冲

    http://www.cnblogs.com/SkylineSoft/category/299475.html

  8. Intellij IDEA + Android SDK + Genymotion Emulator打造最佳Android开发

    原文:Intellij IDEA + Android SDK + Genymotion Emulator打造最佳Android开发 Intellij IDEA + Android SDK + Geny ...

  9. Sublime 插件安装、常用配置

    安装:sublime + 插件 安装Sublime: 官网:http://www.sublimetext.com/ 安装package control组件,之后我们会使用该组件给Sublime安装常用 ...

  10. Linux2.6中的Slab层

          还记得一个进程创建的时候是什么给它分配的“进程描述符”吗?没错,是slab分配器,那么,这个slab分配器是个什么东西呢?       分配和释放数据结构是所有内核中最普遍的操作之一.为了 ...