洛谷P1480 A/B Problem(高精除高精)
P1480 A/B Problem
题目描述
输入两个整数a,b,输出它们的商(a<=10^5000,b<=10^9)
输入输出格式
输入格式:
两行,第一行是被除数,第二行是除数。
输出格式:
一行,商的整数部分
输入输出样例
10
2
5
#include<iostream>
#include<cstring>
using namespace std;
int a[],b[],c[],d,i;
void init(int a[])
{
string s;
cin>>s;
a[]=s.length();
for(i=;i<=a[];i++)
a[i]=s[a[]-i]-'';
}
void numcpy(int p[],int q[],int det)
{
for(int i=;i<=p[];i++)
q[i+det-]=p[i];
q[]=p[]+det-;
}
int compare(int a[],int b[])
{
int i;
if(a[]>b[])
return ;
if(a[]<b[])
return -;
for(i=a[];i>;i--)
{
if(a[i]>b[i])
return ;
if(a[i]<b[i])
return -;
}
return ;
}
void jian(int a[],int b[])
{
int flag,i;
flag=compare(a,b);
if(flag==)
{
a[]=;
return;
}
if(flag==)
{
for(i=;i<=a[];i++)
{
if(a[i]<b[i])
{
a[i+]--;
a[i]+=;
}
a[i]-=b[i];
}
while(a[]>&&a[a[]]==)
a[]--; }
}
void chugao(int a[],int b[],int c[])
{
int i,tmp[];
c[]=a[]-b[]+;
for(int i=c[];i>;i--)
{
memset(tmp,,sizeof(tmp));
numcpy(b,tmp,i);
while(compare(a,tmp)>=)
{
c[i]++;
jian(a,tmp);
}
}
while(c[]>&&c[c[]]==)
c[]--;
}
void printf(int a[])
{
int i;
if(a[]==)
{
cout<<<<endl;
return;
}
for(int i=a[];i>;i--)
cout<<a[i];
cout<<endl;
return;
}
int main()
{
init(a);
init(b);
chugao(a,b,c);
printf(c);
//printf(a);
}
洛谷P1480 A/B Problem(高精除高精)的更多相关文章
- 洛谷——P1480 A/B Problem
P1480 A/B Problem 题目描述 输入两个整数a,b,输出它们的商(a<=10^5000,b<=10^9) 输入输出格式 输入格式: 两行,第一行是被除数,第二行是除数. 输出 ...
- 洛谷 P1480 A/B Problem
P1480 A/B Problem 题目描述 输入两个整数a,b,输出它们的商(a<=10^5000,b<=10^9) 输入输出格式 输入格式: 两行,第一行是被除数,第二行是除数. 输出 ...
- 洛谷1601 A+B Problem(高精) 解题报告
洛谷1601 A+B Problem(高精) 本题地址:http://www.luogu.org/problem/show?pid=1601 题目背景 无 题目描述 高精度加法,x相当于a+b pro ...
- 洛谷1303 A*B Problem 解题报告
洛谷1303 A*B Problem 本题地址:http://www.luogu.org/problem/show?pid=1303 题目描述 求两数的积. 输入输出格式 输入格式: 两个数 输出格式 ...
- 洛谷1001 A+B Problem
洛谷1001 A+B Problem 本题地址:http://www.luogu.org/problem/show?pid=1001 题目描述 输入两个整数a,b,输出它们的和(|a|,|b|< ...
- 洛谷P1865 A % B Problem
1.洛谷P1865 A % B Problem 题目背景 题目名称是吸引你点进来的 实际上该题还是很水的 题目描述 区间质数个数 输入输出格式 输入格式: 一行两个整数 询问次数n,范围m 接下来n行 ...
- 【题解】洛谷P2532 [AHOI2012]树屋阶梯(卡特兰数+高精)
洛谷P2532:https://www.luogu.org/problemnew/show/P2532 思路 来自Sooke大佬的推导: https://www.luogu.org/blog/Sook ...
- 洛谷P1919 A*B problem 快速傅里叶变换模板 [FFT]
题目传送门 A*B problem 题目描述 给出两个n位10进制整数x和y,你需要计算x*y. 输入输出格式 输入格式: 第一行一个正整数n. 第二行描述一个位数为n的正整数x. 第三行描述一个位数 ...
- 【洛谷P1303 A*B Problem】
题目描述 求两数的积. 输入输出格式 输入格式: 两行,两个数. 输出格式: 积 输入输出样例 输入样例#1: 1 2 输出样例#1: 2 说明 每个数字不超过10^2000,需用高精 emm,显然本 ...
随机推荐
- Unity3D之Mesh(五)绘制圆
前言: Unity3D中Mesh的基本单位是三角形,而圆形就是由许许多多的三角形组成的.那么我们就知道了绘制圆形的Mesh需要两个变量:圆的半径 以及分割数: 一.实现过程 基本过程与之前的类似,最 ...
- python-多线程趣味(锁)
接上一篇,程序员在敲代码的时候觉得无聊,无聊的时候,会想到去吃零食,那么假如一个函数: #! /usr/bin/env python #coding=utf-8 ''' ''' import time ...
- (转)#ifndef的用法
原文链接:http://wenku.baidu.com/link?url=c4doqVo3U429RkwTN5eaJIfD2rEu-1bLKKQXuqO8drmL359PhUjVmzC7P94wBY9 ...
- 表达式计算-----------eval()运算符
1.java的eval()方法(或称之为运算符)可以将字符串解析成可以运行的javaScript代码,例如 eval()只有一个参数.如果传入的参数不是一个字符串,那么它会直接返回这个参数.如果传入的 ...
- 构建嵌入式小型Linux系统
构建嵌入式小型Linux系统 摘要:用buildroot构建x86的交叉编译工具链:裁减linux内核,尽可能做到最小:手工构建根文件系统:安装qemu虚拟机,仿真新配置的Linux系统:为新配置的L ...
- gulp之压缩css
/** * css压缩 * npm install --save-dev gulp-minify-css * npm install --save-dev gulp-rename * * * 可参考: ...
- HDOJ(1018)
Big Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- Lua常用API
转自:http://www.cnblogs.com/ringofthec/archive/2010/10/22/lua.html 1. 建一个新表 void lua_createtable (lua ...
- java基础知识(10)---包
包:定义包用package关键字. 1:对类文件进行分类管理. 2:给类文件提供多层名称空间. 如果生成的包不在当前目录下,需要最好执行classpath,将包所在父目录定义到classpath变量中 ...
- [nowCoder] 两个长度相同有序数组的中位数
给定两个有序数组arr1和arr2,两个数组长度都为N,求两个数组中所有数的上中位数.例如:arr1 = {1,2,3,4};arr2 = {3,4,5,6};一共8个数则上中位数是第4个数,所以返回 ...