自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

RikkaTheWorld

El Psy Congroo

  • 博客(13)
  • 收藏
  • 关注

原创 51nod 1057 N的阶乘

题目链接:这里写链接内容 大数阶乘,一脸懵逼, 大神的代码,说是压进去,这几天都在看。#include<cstdio>#include<iostream>#include<algorithm>#include<cstring>#include<cmath>using namespace std;#define N 10000#define mod 100000int a[N];

2016-11-30 21:50:24 387

原创 51nod 1130 1157 求阶乘结果长度(斯特林公式)

1057题目链接:传送门 1130题目链接:传送门 就是学斯特林公式然后开log10化简得  res=(long)( (log10(sqrt(4.0*acos(0.0)n)) + n(log10(n)-log10(exp(1.0)))) + 1 ); 1130 代码如下:#include<cstdio>#include<iostream>#include<algorithm>#incl

2016-11-30 20:47:31 585 3

原创 51nod 1005 大数加法

题目链接:这里写链接内容 因为题目说给定的数可以是负数,就相当这个题包括了加法和减法 加法减法的借位原理都一样,中间改了n遍,终于过了 代码又臭又长代码如下:(这次加了注释进去)#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<cmath>using namespace std

2016-11-30 20:02:25 744

原创 51nod 1097 拼成最小的数

题目链接:传送门 用结构体存字符,然后重载cmp进行比较,怎么个比较法呢? 学到一个超牛逼的方法就是cmp里面定义 if(x.a+y.a#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<cmath>using namespace std;#define N 10100str

2016-11-28 19:44:25 505

原创 51nod 1091 线段的重叠

题目链接:传送门 是不重叠线段简单版,这个只用对开始的端点进行大小排序,每次记录最后面的端点的位置r 如果当前的线段的右端点小于r,则这个线段被另一个大的线段包住,否则则要算到这个线段的左端点到这个r,计算长度并且更新r就行了 代码如下:#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using

2016-11-11 21:28:06 306

原创 51nod 1019 逆序数(归并排序)

题目链接:传送门 归并排序,时间复杂度为O(n) 冒泡排序也可以一个个查,但效率太低 归并排序的时候每出现一次逆序就算进去 代码如下:#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define N 50010int a[N],b[N];in

2016-11-10 22:50:14 204

原创 51nod 5173 约瑟夫环

题目链接:传送门 不用链表循环,直接用数学方法 f(n)=(f(n-1)+k)%n 代码如下:#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;#define N 1000010int a[N];int main(){ int i,j,n,

2016-11-09 22:07:43 243

原创 51nod 1035最长循环节

题目链接:传送门 首先一个数如果能被2或者5整除,整除到最后结果等于1,那么这个数被1除一定不是循环小数。 像3 6 7这些数的倍数被1除都是无限循环小数。 这个题就相当于求 10^a%n=1把最小的a求出来。 所以我一开始就用Pow函数写了一个,结果发现像1/49这种有理数,无限循环小数,连电脑的计算器都找不出他的循环节,他的循环节太后了,开Pow是找不出来的。 所以就模拟除法,每次除出

2016-11-09 21:03:24 370

原创 POJ 1007 DNA Sorting

题目链接:传送门 水题,就是找出每个字符串的逆序数,直接用结构体存储就行 代码如下:#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;struct rng{ int num; char a[60];}t[150];bool cmp(rn

2016-11-07 22:16:04 212

原创 POJ 1006 生理周期

题目链接:这里写链接内容 水题,直接打表,三个每次加上相应的天数,就可以过,但是也要考虑比如 24 29 34 0这种情况,这种还要往前算的,就是也要减去相应的天数直到减到小于0天,要注意 没有想到这个地方- - 代码如下:#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namesp

2016-11-07 21:27:43 373

原创 51nod 1265 四点共面

题目链接:传送门 给出四个点,看看是否共面。 因为三个点能确定一个平面,所以先把前三个点构成一个平面,看看第四个在不在就行了 三点确定一个平面的公式如下: a(x-x1)+b(y-y1)+c(z-z1)=0 a=(y2-y1)(z3-z1)-(y3-y1)(z2-z1) b=(z2-z1)(x3-x1)-(z3-z1)(x2-x1) c=(x3-x1)(y3-y1)-(x2-x1)(y

2016-11-07 19:59:33 287

原创 POJ 1002 487-3279(map)

题目链接:传送门 用map 因为里面的数字只有7位,所以可以开map< int,int>省去用< string,int>的写法 其中map的first代表第一个变量,second 代表第二个变量 代码如下:#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#include<iostream>#incl

2016-11-02 21:56:13 232

原创 51nod 1013 3的幂数和(快速幂+费马小定理)

题目链接:传送门 这题就是求公比为3首项为0的等比数列前n项和 公式是 (3^n-1)/2 上面直接用快速幂 上面会很大,这样除以2会有误差,所以除以2就要乘以1/2的逆元 2关于mod1000000007的逆元是 2^mod-2 顺便附大神对费马小定理的理解 传送门 代码如下:#include<cstdio>#include<cstring>#include<algorithm

2016-11-02 20:53:38 262

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除