zoukankan      html  css  js  c++  java
  • 问题 K: A/B Problem

    题目描述

    做了A+B Problem,A/B Problem不是什么问题了吧!

    输入

    每组测试样例一行,首先一个号码A,中间一个或多个空格,然后一个符号( / 或者 % ),然后又是空格,后面又是一个号码B,A可能会很长,B是一个int范围的数。

    输出

    输出结果。

    样例输入

    110 / 100
    99 % 10
    2147483647 / 2147483647
    2147483646 % 2147483647

    样例输出

    1
    9
    1
    2147483646
     1 #include<stdio.h>  
     2 #include<string.h>  
     3 char a[100000];  
     4 int c[100000],d[100000],s[100000];  
     5 int main() {
     6     char ni;  
     7     int b;  
     8     while(scanf("%s %c %d",a,&ni,&b)!=-1) {
     9         memset(c,0,sizeof(c));  
    10         memset(s,0,sizeof(s));  
    11         int l,k;  
    12         l=strlen(a);  
    13         int p=0;  
    14         for(int i=0; i<l; i++) {
    15             c[p++]=a[i]-48;  
    16         }  
    17         if(ni=='/') {  
    18             if(b==0)  
    19                 printf("0
    ");  
    20             else {  
    21                 if(a=="0")  
    22                     printf("0
    ");  
    23                 else {  
    24     //          if(b==0)  
    25     //              printf("0
    ");  
    26     //          else {  
    27                     int j=0;  
    28                     int y=0;  
    29                     int haha=0;  
    30                     for(int i=0; i<l; i++) {  
    31                         int sum=c[i]+y*10;  
    32                         int x=sum/b;  
    33                         y=sum%b;  
    34                         if(x||y) {  
    35                             haha=-1;  
    36                             s[j++]=x;  
    37                         }  
    38                     }  
    39                     if(haha==0) {  
    40                         printf("0
    ");  
    41                     }  
    42                     else {
    43                         for(int i=0; i<j; i++) {  
    44                             printf("%d",s[i]);  
    45                         }  
    46                         printf("
    ");  
    47                     }  
    48                   // }  
    49                 }  
    50             }
    51         }  
    52         if(ni=='%') {  
    53             if(b==0)  
    54                 printf("%s
    ",a);  
    55             else {  
    56                 int sum=0;  
    57                 for(int i=0; i<l; i++) {  
    58                     sum=sum*10+(c[i]);  
    59                     sum=sum%b;  
    60                 }  
    61                 printf("%d
    ",sum);  
    62             }  
    63         }
    64     }
    65     return 0;
    66 }  
    View Code
  • 相关阅读:
    leetcode Maximum Product Subarray
    JAVA中的泛型类型不可以直接初始化
    android里getView,inflate,listview问题
    二元查找树转换成一个排序的双向链表
    c语言函数指针
    C++初始化小问题
    ODPS中的TaskContext类里面的write函数
    Eclipse里面新建servlet 是否需要配置web.xml
    检测鼠标是否在标签上
    继承
  • 原文地址:https://www.cnblogs.com/tong69/p/5788286.html
Copyright © 2011-2022 走看看