zoukankan      html  css  js  c++  java
  • 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
    ");
    			}
    			else if(len1<len2){
    				printf("a>b
    ");
    			}
    			else if(len1==len2){
    				if(pd(int1,int2)>0){
    					printf("a<b
    ");
    				}
    				else if(pd(int1,int2)<0){
    					printf("a>b
    ");
    				}
    				else{
    					printf("a==b
    ");
    				}
    			}
    		}
    		else if((int1[0]!='-')&&(int2[0]!='-')){
    			if(len1>len2){
    				printf("a>b
    ");
    			}
    			else if(len1<len2){
    				printf("a<b
    ");
    			}
    			else if(len1==len2){
    				if(pd(int1,int2)>0){
    					printf("a>b
    ");
    				}
    				else if(pd(int1,int2)<0){
    					printf("a<b
    ");
    				}
    				else{
    					printf("a==b
    ");
    				}
    			}
    		}
    		else{
    			if(int1[0]!='-')printf("a>b
    ");
    			else printf("a<b
    ");
    		}
    	}
    	return 0;
    }
    
    int pd(char s1[],char s2[]){
    	int i=0;
    	while(++i){
    		if(s1[i-1]=='')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


    这是真正用到大数运算的经典题目,也不难,只需要回想起小学时的乘法竖式,


    版权声明:本文为博主原创文章,未经博主允许不得转载。

    本文为博主原创文章,未经博主允许不得转载。
  • 相关阅读:
    输入输出
    SpringCloud组件之HystrixDashbord
    SpringCloud组件之zuul的使用
    SpringCloud组件之Hystrix组件的使用
    负载均衡算法示例
    JavaScript基础知识总结
    SpringBoot收藏
    java虚拟机详细图解10--JVM类加载机制及类加载过程
    java虚拟机详细图解9--JVM机器指令集
    java虚拟机详细图解8--JVM运行时数据区
  • 原文地址:https://www.cnblogs.com/you-well-day-fine/p/4671674.html
Copyright © 2011-2022 走看看