乙级(Basic Level) 1007

Posted guanji2017

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了乙级(Basic Level) 1007相关的知识,希望对你有一定的参考价值。

题目描述

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

输入描述:

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

输出描述:

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

输入例子:

123456789050987654321 7

输出例子:

17636684150141093474 3

解法:

Python:
a = input().split() a = [int(i) for i in a] print(a[0]//a[1],a[0]%a[1])

 

C++:
//思路:把除法转换为求商过程的逆转,比如 100/2 等价于 1/2 商为0,余数为1,商为0的情况下不能输输出, 然后余数和下一位即0
//   组合为1*10+0=10,就变成10/2 商为5余数为0,此时输出商数。然后0和下一位0组合为0*10+0=0 0/2余数为0,此时运算完毕
#include<iostream> #include<string> using namespace std; int main(){ string str,ans; int i,j,n,d = 0; cin >> str >> n; for(i = 0; i <= str.size()-1; i++){ int current = d * 10 + (str[i]-0); ans += (current / n+0); d = current % n; } j = 0; for(i=0;i<ans.size();i++) if(ans[i] != 0 || j){ j = 1; cout<<ans[i]; } cout << " " << d; return 0; }

 







以上是关于乙级(Basic Level) 1007的主要内容,如果未能解决你的问题,请参考以下文章

PAT乙级(Basic Level)真题训练

JAVA1003 我要通过!(20分) PAT乙级 PAT (Basic Level)Practice (中文)

JAVA1004 成绩排名 (20分) PAT乙级 PAT (Basic Level) Practice(中文)

JAVA1003 我要通过!(20分) PAT乙级 PAT (Basic Level)Practice (中文)

乙级(Basic Level) 1009 数字黑洞

乙级(Basic Level) 1006