ocrosoft Contest1316 - 信奥编程之路~~~~~第三关 问题 L: 大整数减法

http://acm.ocrosoft.com/problem.php?cid=1316&pid=11

题目描述

求两个大的正整数相减的差。

输入

共2行,第1行是被减数a,第2行是减数b(a > b)。每个大整数不超过200位,不会有多余的前导零。

输出

一行,即所求的差。

样例输入

9999999999999999999999999999999999999
9999999999999

样例输出

9999999999999999999999990000000000000

代码:

#include<stdio.h>
#include<string.h>
int main() {
	int  k = 0;
	int  a1[255], a2[255], a3[255];
	char c1[255], c2[255];

    memset(a1, 0, sizeof(a1));
    memset(a2, 0, sizeof(a2));

	scanf("%s",c1);
	scanf("%s",c2);

    int str1=strlen(c1);
	int str2=strlen(c2);
	int cnt = 0;

	for(int i = str1 - 1; i >= 0; i --)
	a1[cnt ++] = c1[i] - ‘0‘;

	cnt = 0;
	for(int i = str2 - 1; i >= 0; i --)
	a2[cnt ++] = c2[i] - ‘0‘;

    for(int i = 0; i < 255; i ++) {
    	a1[i] -= a2[i];
    	if(a1[i] < 0) {
	    	a1[i] += 10;
	    	a1[i + 1] --;
	    }
    }

    cnt = 0;
    for(int i = 254; i >= 0; i --)
     a3[cnt ++] = a1[i];

	for(int i = 0; i < 255; i ++) {
	if(a3[i] != 0)
        k = 1;
	if(k == 1)
        printf("%d", a3[i]);
	}
	if(k == 0)
        printf("0");
	printf("\n");
	return 0;

}

  

原文地址:https://www.cnblogs.com/zlrrrr/p/9728717.html

时间: 2024-08-24 08:19:38

ocrosoft Contest1316 - 信奥编程之路~~~~~第三关 问题 L: 大整数减法的相关文章

我的编程之路(二十一) 规范

不知不觉一周就过去了,这周细想真的没有做成什么,因为几乎都是做了改,改了做··· 1.代码规范 以前自认为自己很注重代码规范,但是没有想到自己项目组的开发会将代码规范审查的那么严谨,这突然让我想到之前说到程序员都喜欢追求完美,都喜欢自己和自己的风格一致,否则就会觉得别扭,不过与此不同,这是团队开发,代码规范是为了统一风格,便于别人的阅读与后人的修改与维护,虽然因为这我前前后后改了三次dao层的代码,一是要用公司封装的借口,二是要把异常处理都放在这一层或者service层,三是要用公司自己写的工具

编程之路源于认真和沉迷---全部篇

 你从来不知道,当一位老师希望用教育来改变学生的思维的话,那么他的思维绝对视超出常人的. 想法和能力只有并驾齐驱,所表现得优秀才最让人折服. 你还在苦恼编程难吗?让王国政老师结果的同学,或许都一对编程产生了浓厚的兴趣了吧. 以前就听过一句话,你又怎么样的视角,要看你所接触的人.当然,庆幸大学期间能遇到这么优秀的老师,每每同学之间讨论起王老师的时候,都充满以一种敬仰. 当我们的作业,我们的学习内容都在空间中展现的时候.人气暴涨,我们就像追剧一样追着老师的空间,希望每天都能看到最新的内容. 真心很棒

[转载]通达信插件选股(基于通达信插件编程规范的简单分析)

[转载]通达信插件选股(基于通达信插件编程规范的简单分析) 原文地址:通达信插件选股(基于通达信插件编程规范的简单分析)作者:哈尔滨猫猫 首先声明,鄙人是编程人员,不是股民.对选股概念了解甚少.本文仅作编程人员学习借鉴之用.不对选股理论进行探讨和解释. 以前有客户找我做过通达信插件选股的小任务,当时第一次接触面向接口(此类“接口”)编程,也是第一次接触到股票里相关的概念.最近由于接手一个任务,与上次开发相类似,故旧事重提,仔细研究一番.将个人学习研究所得知识与大家分享.在网上搜相关资料,可用的.

我的编程之路(十九) 开发中一些细节与启发

1.js的命名空间           如果写后台代码,分层是潜意识中的基本常识,但是一到了前台,却没了这种意识,归根结底还是js用的不多,也一直没有在意js的地位,直到现在富客户端的趋势与要求,使得很多代码都要在前台用js或其框架完成,所以对于js代码的管理就要像后台java代码一样有其规范了,而命名空间就是package,也是为了管理不同层次的代码. 2.闭包          闭包就是能够读取其他函数内部变量的函数.它的最大用处有两个,一个是可以读取函数内部的变量,另一个就是让这些变量的值

初次踏上GUI编程之路(有点意思,详细介绍了菜鸟的学习之路)

初次踏上GUI编程之路 —— 我的Qt学习方法及对Qt认识的不断转变 -> 开始接触GUI与开始接触Qt: 话说,我第一次看见“Qt”这一个名词,好像是在CSDN网站的主页上吧,因为CSDN好像在给Qt做宣传,在主页上占了一栏的广告,只是,这时,我还没怎么刻意去留意这个陌生的字眼.在我大二上学期中下期时,即大概是2011年的12月,由于自己刚刚完成了汇编语言的入门学习,正要制订下一个学习目标,所以,又开始找起了资料,同时,也再次开始为自己的就业问题担心,于是,开始搜集一些招聘单位的信息,这时候,

转发---十大编程算法助程序员走上大神之路

十大编程算法助程序员走上大神之路 本文为转发,源地址:http://linux.cn/article-3613-1.html 算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见.事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来. 快速排序使用分治法(Divide and co

我的编程之路(二十) 新的环境、新的开始

被其他项目组借用了三个星期,这周终于要给自己的项目组干活了,之前就听同事说过省厅,这次终于要去了,有点激动哈: 1.挤公交 星期二跟着同事一起去省厅,那个公交呀,真是挤呀,以前还庆幸自己上班不用挤公交呢,唉~~~看来这一个多月都要重复着早上7点20起床,7点50挤半个多小时公交的生活了~~~ 2.同事 还记得刚来公司的时候,强哥就跟我说,zqq(一个女生)就做的很好,对自己要求很高,一直在省厅那边,上次我们项目组聚会,第一次见到本人,也见到不少其他同事,那次还自己把自己灌醉了,幸亏宝强哥把我送了

《编程之路》之生活篇01

对于编程,首先得选择一个适合的语言,有的人入门语言是c,有的是Pascal,不管是什么语言,只要深入研究,对编程都是有益的.尽管不同的语言有不同的有不同的语法,而且语法各不相同,有的语法简单,有的繁杂,我们都不宜过度追求语法的精美,编程是一个艺术创造的过程,光有华美的材料是远远不够的,还得有一定的设计,就像是算法一般,但是,算法在怎么精简和巧妙也得和相应的实现语言相结合,才能发挥出算法和语言的最大优势. 曾经,我几度陷进编程的陷进之中,过度的追求代码的优美和算法的精简,这使得我在编程的道路中举步

十大编程算法助程序员走上大神路

算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见.事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来. 快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists). 算法步骤: 1 从数列中挑出一个元素,称为 "