def Add(a, b):
l = []
alen = len(a)
blen = len(b)
result = str(int(a) + int(b))
relen = len(result)
llen = alen > blen and alen or blen+1
llen = relen > llen and relen or llen
l.append(' ' * (llen - alen) + a)
l.append(' ' * (llen - blen - 1) + '+' + b)
l.append('-' * llen)
l.append(' ' * (llen - relen) + result)
List.append(l) def Sub(a, b):
l = []
alen = len(a)
blen = len(b)
result = str(int(a) - int(b))
relen = len(result)
llen = alen > blen and alen or blen+1
l.append(' ' * (llen - alen) + a)
l.append(' ' * (llen - blen - 1) + '-' + b)
l.append('-' * llen)
l.append(' ' * (llen - relen) + result)
List.append(l) def Multi(a, b):
l = []
alen = len(a)
blen = len(b)
result = str(int(a) * int(b))
relen = len(result)
llen = relen > blen+1 and relen or blen+1
_len_bove = alen > blen and alen or blen+1
_len_below = len(str(int(a) * int(b[-1])))
_len = _len_bove > _len_below and _len_bove or _len_below
l.append(' ' * (llen - alen) + a)
l.append(' ' * (llen - blen - 1) + '*' + b)
l.append(' ' * (llen - _len) + '-' * _len)
for i in range(blen):
cpt = str(int(a) * int(b[-i-1]))
l.append(' ' * (llen - len(cpt) - i) + cpt)
if blen != 1:
l.append('-' * llen)
l.append(' ' * (llen - relen) + result)
List.append(l) n = input()
List = []
for i in range(n):
string = raw_input()
if '+' in string:
a, b = string.split('+')
Add(a, b)
elif '-' in string:
a, b = string.split('-')
Sub(a, b)
elif '*' in string:
a, b = string.split('*')
Multi(a, b) for l in List:
for i in l:
print i
print

Simple Arithmetics的更多相关文章

  1. 杭电ACM分类

    杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...

  2. HOJ题目分类

    各种杂题,水题,模拟,包括简单数论. 1001 A+B 1002 A+B+C 1009 Fat Cat 1010 The Angle 1011 Unix ls 1012 Decoding Task 1 ...

  3. 转载:hdu 题目分类 (侵删)

    转载:from http://blog.csdn.net/qq_28236309/article/details/47818349 基础题:1000.1001.1004.1005.1008.1012. ...

  4. PHP设计模式(一)简单工厂模式 (Simple Factory For PHP)

    最近天气变化无常,身为程序猿的寡人!~终究难耐天气的挑战,病倒了,果然,程序猿还需多保养自己的身体,有句话这么说:一生只有两件事能报复你:不够努力的辜负和过度消耗身体的后患.话不多说,开始吧. 一.什 ...

  5. Design Patterns Simplified - Part 3 (Simple Factory)【设计模式简述--第三部分(简单工厂)】

    原文链接:http://www.c-sharpcorner.com/UploadFile/19b1bd/design-patterns-simplified-part3-factory/ Design ...

  6. WATERHAMMER: A COMPLEX PHENOMENON WITH A SIMPLE SOLUTION

    开启阅读模式 WATERHAMMER A COMPLEX PHENOMENON WITH A SIMPLE SOLUTION Waterhammer is an impact load that is ...

  7. BZOJ 3489: A simple rmq problem

    3489: A simple rmq problem Time Limit: 40 Sec  Memory Limit: 600 MBSubmit: 1594  Solved: 520[Submit] ...

  8. Le lié à la légèreté semblait être et donc plus simple

    Il est toutefois vraiment à partir www.runmasterfr.com/free-40-flyknit-2015-hommes-c-1_58_59.html de ...

  9. ZOJ 3686 A Simple Tree Problem

    A Simple Tree Problem Time Limit: 3 Seconds      Memory Limit: 65536 KB Given a rooted tree, each no ...

随机推荐

  1. HTTP返回码总结 (zz)

    Http返回码是服务器给爬虫的信息,需要有效的利用. HTTP协议状态码表示的意思主要分为五类 ,大体是 :  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~  1××  保留  2××  ...

  2. (转)UML实践----用例图、类图、对象图、顺序图、协作图、状态图、活动图、组件图、配置图

    面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML ...

  3. Configure the handler mapping priority in Spring MVC

    Often times, you may mix use of multiple handler mappings strategy in Spring MVC development. For ex ...

  4. Linux下MongoDB备份脚本

    #!/bin/bash today=`date +%Y%m%d` mongodump -h localhost -d salary -o /home/chzhao/mongobackup/$today ...

  5. java assert的用法简介

    assert的基本用法 assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制,如C,C++和Eiffel等,但是支持的形式不尽相同,有的是通过语言本身.有的是通过库 ...

  6. [iOS基础控件 - 6.10.2] PickerView 自定义row内容 国家选择Demo

    A.需求 1.自定义一个UIView和xib,包含国家名和国旗显示 2.学习row的重用   B.实现步骤 1.准备plist文件和国旗图片     2.创建模型 // // Flag.h // Co ...

  7. CodeForces 706C Hard problem (水DP)

    题意:对于给定的n个字符串,可以花费a[i]  将其倒序,问是否可以将其排成从大到小的字典序,且花费最小是多少. 析:很明显的水DP,如果不是水DP,我也不会做.... 这个就要二维,d[2][max ...

  8. HDU 4461 The Power of Xiangqi (水题)

    题意:给定一些字母,每个字母都代表一值,如果字母中没有B,或者C,那么就在总值大于1的条件下删除1,然后比较大小. 析:没什么好说的,加起来比较就好了. 代码如下: #pragma comment(l ...

  9. 《JavaScript高级程序设计》 读书笔记(二)

    数据类型 ECMAScript 中有 5 种简单数据类型(也称为基本数据类型):Undefined.Null.Boolean.Number和 String.还有 1 种复杂数据类型--Object,O ...

  10. 移植FreeModbus+ModbusMaster+STM32至RT-Thread(初步)

    一.项目描述 目前操作系统在嵌入式软件行业非常流行,在工控组网方面,以后可能会经常使用到Modbus主机+操作系统.Modbus从机+操作系统甚至Modbus主机+Modbus从机+操作系统.但是操作 ...