首页 > 其他分享 >洛谷P1480 A/B Problem

洛谷P1480 A/B Problem

时间:2024-08-07 17:55:14浏览次数:8  
标签:10 P1480 le 洛谷 int back vector Problem size

4.高精度除以低精度

题目叙述:

A/B Problem

题目描述

输入两个整数 \(a,b\),输出它们的商。

输入格式

两行,第一行是被除数,第二行是除数。

输出格式

一行,商的整数部分。

样例 #1

样例输入 #1

10
2

样例输出 #1

5

提示

\(0\le a\le 10^{5000}\),\(1\le b\le 10^9\)。

代码

本题为高精度除以低精度的模板,我们可以使用vector数组来模拟这个过程

#include<vector>
#include<algorithm>
#include<iostream>
using namespace std;
vector<int> a, c;
int b;
void div(vector<int>& a, int b, vector<int>& c) {
	long long r = 0;
	for (int i = a.size()-1; i >= 0; i--) {
		r = r * 10 + a[i];		//计算被除数
		c.push_back(r / b);		//存商
		r %= b;				//存余数
	}
	//将c先翻转过来,方便去除前导零,我们现在翻转以后,去除末尾的所有0即可,然后再从低位到高位输出就可以了
	reverse(c.begin(), c.end());
	while (c.size() > 1 && c.back() == 0) c.pop_back();
}
int main()
{
	string s;
	cin >> s >> b;
	// 从低位到高位给vector数组赋值
	for (int i = s.size() - 1; i >= 0; i--) a.push_back(s[i] - '0');
	//调用div函数
	div(a, b, c);
	//从低位到高位输出c即可
	for (int i = c.size() - 1; i >= 0; i--) cout << c[i];
	return 0;
}

代码的工作原理和实现过程

标签:10,P1480,le,洛谷,int,back,vector,Problem,size
From: https://www.cnblogs.com/Tomorrowland/p/18347566

相关文章

  • leetcode 1486. 数组异或操作 https://leetcode.cn/problems/xor-operation-in-an-arr
    1486.数组异或操作题目描述给你两个整数,n和start。数组nums定义为:nums[i]=start+2*i(下标从0开始)且n==nums.length。请返回nums中所有元素按位异或(XOR)后得到的结果。示例示例1:输入:n=5,start=0输出:8解释:数组nums为[0,2,4,6,8],其中(0^......
  • 洛谷B3621枚举元组
    一道经典dfs题,很简单就是让你求1~k能组成多少个n位数。当然耐心足够的朋友可以尝试打表。dfs思路:1.定义数组a来存储每一次的组合,其中a[i]表示第i位的数字;3.递归一定要设定终止条件:如果枚举到了n+1位时,输出数组a并returnCode#include<bits/stdc++.h>usingnamespa......
  • 洛谷P1596 [USACO10OCT] Lake Counting S
    这种普通走迷宫的题,还是最好用bfs,毕竟复杂度是比dfs低的。但我这用dfs讲解。具体思路就不做详解,看代码注释。Code#include<bits/stdc++.h>usingnamespacestd;intn,m;chara[105][105];intdx[8]={0,1,-1,0,-1,1,-1,1};//搜索的八个方向常量,xintdy[8]={1,0......
  • Monty Hall problem
    Theproblemcanbeformulatedasfollows.Asaparticipantofagame show,youhavetochooseoneofthreedoors.Behindoneofthedoorsisa prize,behindtwootherdoorsisnothing.Afteryoupickadoor,thegame host,whoknowswheretheprizeis,se......
  • 洛谷P1226 【模板】快速幂
    1.快速幂模板前置知识一个数字n,它的二进制位数一定是log2n向下取整+1;快速幂模板代码这段代码实现了快速幂算法(Exponentiationbysquaring),用来计算(an)的值,其中(a)和(n)都是整数。intquickpow(inta,intn){intres=1;//初始化结果为1,因为任何数的......
  • 洛谷P1208 [USACO1.3] 混合牛奶 Mixing Milk
    P1208[USACO1.3]混合牛奶MixingMilk题目描述由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要。帮助Marry乳业找到最优的牛奶采购方案。Marry乳业从一些奶农手中采购牛奶,并且每一位奶农为乳制品加工企业提供的价格可能相同。此外,就像每头奶牛每天只能挤出固......
  • 洛谷 P4910题解
    题目大意现在穿T次手串,每根手串的长度分别为不同的n,有木和金两种珠子,相邻两颗珠子必须有一个是金。题目思路分析我们现在设穿到第n个珠子时用金的方案数为f[1][n],用木的方案数为f[0][n]如果第n个珠子为金,那么前一颗珠子是什么都可以,因此f[1][n]=f[1][n-1]+f[0][n-1]而如果......
  • 洛谷P5250 【深基17.例5】木材仓库
    【深基17.例5】木材仓库题目描述博艾市有一个木材仓库,里面可以存储各种长度的木材,但是保证没有两个木材的长度是相同的。作为仓库负责人,你有时候会进货,有时候会出货,因此需要维护这个库存。有不超过100000条的操作:进货,格式1Length:在仓库中放入一根长度为Length(不超过\(10......
  • 洛谷P1209修理牛棚 Barn Repair
    [USACO1.3]修理牛棚BarnRepair题目描述在一个月黑风高的暴风雨夜,FarmerJohn的牛棚的屋顶、门被吹飞了好在许多牛正在度假,所以牛棚没有住满。牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜。有些牛棚里有牛,有些没有。所有的牛棚有相同的宽度。宽度为1自门遗失以后......
  • 洛谷P1081【NOIP2012提高组】开车旅行
    题目见[NOIP2012提高组]开车旅行-洛谷(懒得打题目了)我们直接上代码#include<iostream>#include<cstdlib>#include<cstdio>#include<cmath>#include<cstring>#include<iomanip>#include<algorithm>#include<ctime>#include<queue>......