PAT乙级 1017 A除以B

一.题目描述

本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。

输入格式:

输入在一行中依次给出 A 和 B,中间以 1 空格分隔。

输出格式:

在一行中依次输出 Q 和 R,中间以 1 空格分隔。

二.代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
    string a;
    int b,remain=0,sum;
    cin>>a>>b;
    for(unsigned i=0;i<a.length();i++)
    {
        sum=remain*10+a[i]-'0';
        remain=sum%b;
        if(i==0&&sum/b==0)  continue;
        else                cout<<sum/b;
    }
    if(a.length()==1)
        cout<<'0';
    cout<<" "<<remain<<endl;
}

上一篇:1017 怪盗基德的滑翔翼(最长上升子序列扩展)


下一篇:转载 C# 连接oracle 10g 出现ora-1017用户名/口令无效; 登录被拒绝