青少年编程知识记录 codecoming

【题解】高精度除法

【题目描述】

高精除以高精,求它们的商和余数。

【输入描述】

输入两个低于300位的正整数。

【输出描述】

输出商和余数。

【样例输入】

1231312318457577687897987642324567864324567876543245671425346756786867867867  1231312318767141738178325678412414124141425346756786867867867

【样例输出】

999999999748590  179780909068307566598992807564736854549985603543237528310337

标签: 高精度

作者:亿万年的星光 分类:题解目录 浏览:

【题解】大整数乘法

【题目描述】

求两个不超过200位的非负整数的积。

【输入描述】

有两行,每行是一个不超过200位的非负整数,没有多余的前导0。

【输出描述】

一行,即相乘后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。

【样例输入】

12345678900  98765432100

【样例输出】

1219326311126352690000

标签: 高精度

作者:亿万年的星光 分类:题解目录 浏览:

unsigned

在一些代码中,经常能看到unsigned这种数据类型,比如下面这样的。#include<iostream> using namespace std; int main(){ unsigned int x; int y; cin>>x>>y; cout<<x<<" "<<y; return 0; }那么
作者:亿万年的星光 分类:C++知识 浏览:

【数论】快速乘

上一篇文章简单说了龟速乘的问题,有人觉得龟速乘还是太慢了,有没有什么办法再快一点,实际是有的,就是我们今天介绍的 快速乘。快速乘的原理和龟速乘不同,快速乘并不是基于二进制和位运算,严格来说,快速乘是利用了一个bug才实现的功能。这个bug 就是 long double 和long long 的定义范围不同。因为long double的范围比long long 大一些。它来源于下面这篇文章:什么意思呢?简单来说,就是就是在原地爆炸的边缘疯狂试探,把本来存进long long会炸掉的值先进行计算,用
作者:亿万年的星光 分类:C++知识 浏览:

【数论】龟速乘

我们前面一篇文章学习了快速幂。它可以解决两类问题:a^b,(a^b)%c对于第一类,我们可以使用递归法或者迭代法可以求出,为了计算的快,我们可以引入位运算操作,但是目前来看,无论怎么优化都不能超过long long。对于第二类,是快速幂的优点所在,通过 (a*b)%m=(a%m * b%m) %m公式,我们可以将结果运算范围大大减小,使运算结果保持在m范围以内。但是,快速幂并不是万能的,比如下面这个例子求(a^b)%m。19260817 2333333 12345676543
作者:亿万年的星光 分类:C++知识 浏览:

【数论】杨辉三角

一、起源 杨辉三角,是二项式系数在三角形中的一种几何排列。在欧洲,这个表叫做帕斯卡三角形。帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年。杨辉三角是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的结合。可以看出,它与上节课讲的二项式系数一样。二、特点每个数等于它上方两数之和。每行数字左右对称,由1开始逐渐变大。第n行的数字有n项。前n行共[(1+n)n]/2 个数。
作者:亿万年的星光 分类:C++知识 浏览:

【数论】二项式定理

一、基本概念

上面这个式子就叫做二项式定理,又称牛顿二项式定理,该定理给出两个数之和的整数次幂诸如展开为类似项之和的恒等式。二项式定理可以推广到任意实数次幂,即广义二项式定理。

 初中高中阶段比较常用的是二次方和三次方

(a+b)²=a²+2ab+b²

(a+b)³=a³+3a²b+3ab²+b²



扩展:常见平方和立方和公式及其变形:

(a+b)²=a²+2ab+b²

(a-b)²=a²-2ab+b²

a²-b²=(a+b)(a-b)

(a+b)³=a³+3a²b+3ab²+b²

(a-b)³=a³-3a²b+3ab²-b³

a³+b³=(a+b)(a²-ab+b²)

a³-b³=(a-b)(a²+ab+b²)

作者:亿万年的星光 分类:C++知识 浏览:

【数论】均值不等式

均值不等式是高中常见的一个知识点,下面这篇文章做一下简单总结。

1、

其中a,b属于实数R,当且仅当a=b时,等号成立。这个也叫基本不等式



2、

其中a,b属于正实数,当且仅当a=b时,等号成立。





3、

其中a,b属于正实数,当且仅当a=b时,等号成立。



4、



其中a,b属于正实数,当且仅当a=b时,等号成立。

5、不等式链

6、注意使用不等式求最值的条件是:一正、二定、三相等



7、例题一



若实数满足a+b=2, 则3^a+ 3^b 的最小值是____________





作者:亿万年的星光 分类:C++知识 浏览:

【题解】切比雪夫距离

【题目描述】

小C有一个平面!它发现了平面上的两个点,请你求出求它们之间的切比雪夫距离。切比雪夫距离定义为x与y方向坐标差的绝对值较大值。

【输入描述】

四个整数,a,b,c,d。坐标为(a,b)与(c,d)

【输出描述】

输出这两个点的切比雪夫距离。

【样例输入】

0 0 3 4

【样例输出】

4

【数据范围】

0<=a,b,c,d<=100
作者:亿万年的星光 分类:题解目录 浏览:

【数论】常见的距离度量方法

一、欧式距离欧式距离(Eucliden Metric,也是欧几里得度量)是一个通常采用的距离定义,旨在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。例如:对于二维平面上的两点p(x1,y1)与p(x2,y2)间的欧式距离公式为:同理,对于三维平面上两点p(x1,y1,z1)与p(x2,y2,z2)间的欧式距离公式为:欧式距离是距离算法中最常用的方式,日常生活中的大部分距离都可以通过欧式距离进行计算。二、余弦相似度余弦相
作者:亿万年的星光 分类:C++知识 浏览: