NYOJ-73 比大小 AC 分类: NYOJ 2014-01-17 21:29 195人阅读 评论(0) 收藏
典型的大数题目,这只是大数的比较,到时还有大数加减乘除,更加还有乘方,对于大数,一般用数组或者字符串,因为其他的结构类型一般都没有那么大 的范围!!
这道题目需要你仔细回想怎么比较俩个数字的大小,考虑各种情况。例如:符号的不同,位数的不同等,
#include<stdio.h>
#include<string.h>
int pd(char s1[],char s2[]);
int main(){
char int1[1100];
char int2[1100];
int len1,len2;
while(scanf("%s",int1)!=EOF){
scanf("%s",int2);
len1=strlen(int1);
len2=strlen(int2);
if((strcmp(int1,"0")==0)&&(strcmp(int2,"0")==0))break; if((int1[0]=='-')&&(int2[0]=='-')){
if(len1>len2){
printf("a<b\n");
}
else if(len1<len2){
printf("a>b\n");
}
else if(len1==len2){
if(pd(int1,int2)>0){
printf("a<b\n");
}
else if(pd(int1,int2)<0){
printf("a>b\n");
}
else{
printf("a==b\n");
}
}
}
else if((int1[0]!='-')&&(int2[0]!='-')){
if(len1>len2){
printf("a>b\n");
}
else if(len1<len2){
printf("a<b\n");
}
else if(len1==len2){
if(pd(int1,int2)>0){
printf("a>b\n");
}
else if(pd(int1,int2)<0){
printf("a<b\n");
}
else{
printf("a==b\n");
}
}
}
else{
if(int1[0]!='-')printf("a>b\n");
else printf("a<b\n");
}
}
return 0;
} int pd(char s1[],char s2[]){
int i=0;
while(++i){
if(s1[i-1]=='\0')break;
if(s1[i-1]!=s2[i-1]){
if(s1[i-1]>s2[i-1])return 1;
else if(s1[i-1]<s2[i-1]) return -1;
else if(s1[i-1]==s2[i-1]) continue;
}
}
return 0;
}
如果这题目做出了了,就可以去看看第28题目 大数阶乘http://acm.nyist.net/JudgeOnline/problem.php?pid=28
这是真正用到大数运算的经典题目,也不难,只需要回想起小学时的乘法竖式,
版权声明:本文为博主原创文章,未经博主允许不得转载。
NYOJ-73 比大小 AC 分类: NYOJ 2014-01-17 21:29 195人阅读 评论(0) 收藏的更多相关文章
- NYOJ-244 16进制的简单运算 AC 分类: NYOJ 2014-01-17 21:11 195人阅读 评论(0) 收藏
#include<stdio.h> int main() { long x,y; char op; int t; scanf("%d ", &t); while ...
- 树莓派入手(烧写系统,调整分区,配置Java环境,串口GPS配置) 分类: Raspberry Pi 2015-04-09 21:13 145人阅读 评论(0) 收藏
原来的tf卡无故启动不起来,检查发现其文件系统分区使用率为0%. 数据全部丢失!!!!! 血的教训告诉我们备份文件系统的重要性,一切需要重头来.... 烧录系统 安装系统有两种方式, NOOBS工具安 ...
- iOS动画特效 分类: ios技术 2015-05-15 16:29 311人阅读 评论(0) 收藏
关于图层的几个坐标系. 对于ios来说,坐标系的(0,0)点在左上角,就是越往下,Y值越大.越往右,X值越大. 一个图层的frame,它是position,bounds,anchorPoint和tra ...
- 哈夫曼树-Fence Repair 分类: 树 POJ 2015-08-05 21:25 2人阅读 评论(0) 收藏
Fence Repair Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 32424 Accepted: 10417 Descri ...
- Safecracker 分类: HDU 搜索 2015-06-25 21:12 12人阅读 评论(0) 收藏
Safecracker Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- TinyXML2读取和创建XML文件 分类: C/C++ 2015-03-14 13:29 94人阅读 评论(0) 收藏
TinyXML2是simple.small.efficient C++ XML文件解析库!方便易于使用,是对TinyXML的升级改写!源码见本人上传到CSDN的TinyXML2.rar资源:http: ...
- 二分图匹配(KM算法)n^3 分类: ACM TYPE 2014-10-01 21:46 98人阅读 评论(0) 收藏
#include <iostream> #include<cstring> #include<cstdio> #include<cmath> const ...
- C++ Virtual介绍 分类: C/C++ 2015-06-16 21:36 26人阅读 评论(0) 收藏
参考链接:http://www.cnblogs.com/xd502djj/archive/2010/09/22/1832912.html 学过C++的人都知道在类Base中加了Virtual关键字的函 ...
- Ubuntu vim+ ctags(包含系统函数) + taglist 配置 分类: vim ubuntu 2015-06-09 18:19 195人阅读 评论(0) 收藏
阅读大型代码,我们经常需要打开很多的代码文件,搜索各种定义.windows下用惯了ide的朋友,转战Linux的时候可能会觉得很难受,找不到合适的阅读工具.其实万能的vim就可以实现.下面介绍一下vi ...
随机推荐
- sqoop导入数据到hive
1.1hive-import参数 使用--hive-import就可以将数据导入到hive中,但是下面这个命令执行后会报错,报错信息如下: sqoop import --connect jdbc:my ...
- php小算法总结一(数组重排,进制转换)
1.两个有序数组组合成一个新的有序数组 <?php $arr1=array(2,5,7,9,12); $arr2=array(3,4,6,8,10,11); function merge_sor ...
- Fragment的创建以及与activity的参数传递
点击下面不同的TextView变化不同的Fragment avtivity与Fragment之间传递消息不能使用构造器传递,用bunder传递 首先写一个含有FrameLayout(这个布局最佳),里 ...
- android AES 部分机器javax.crypto.BadPaddingException: pad block corrupted
package com.bbguoxue.poetry.util; import java.security.SecureRandom; import javax.crypto.Cipher; imp ...
- 【C++】快排
假设要排序的数据类型为int int main() { qsort(a,len,sizeof(int),cmp); //qsort(数组的起始位置,排序个数,类型大小,比较函数); } int cmp ...
- 枚举esum20160530
关于枚举 常见定义形式,类似定义结构体,先定义枚举变量类型: typedef enum{ Bit_RESET = 0, Bit_SET}BitAction; enum box{pencil,pen ...
- pure css兼容IE
<!--[if lte IE 8]> <link rel="stylesheet" href="pure/0.5.0/grids-responsive- ...
- Python核心编程--学习笔记--4--Python对象
现在开始学习Python语言的核心部分.首先了解什么是Python对象,然后讨论最常用的内建类型,接下来讨论标准类型运算符和内建函数,之后给出对标准类型的不同分类方式,最后提一提Python目前还不支 ...
- 使用Telerik控件搭建Doubanfm频道部分
今天感觉好累啊..还是坚持记录下. 收集的API: https://github.com/HakurouKen/douban.fm-api https://github.com/zonyitoo/do ...
- NOJ1019-计算二叉树的高度和结点数
输入 二叉树的先序遍历序列,用#代表空树或空子树. 输出 共五行 前三行依次输出先序.中序和后序遍历序列, 第四行输出二叉树的高度, 第五行依次输出二叉树总结点数目.叶子结点数目.度为1的结点数目. ...