
数学相关
__yuan__
简单、干净、温暖,便好。
展开
-
素数打表
筛法求一定范围内的素数:#include#include#include#include#include#includeusing namespace std;#define maxn 10010#define INF 0x3f3f3f3fint prime[maxn],isprime[maxn];int main(){ __int64 i,j,n=0,m; f原创 2015-07-15 15:03:12 · 364 阅读 · 0 评论 -
快速幂模m HDU——1061 Rightmost Digit
a*b%m=((a%m)*b)%m题意:输入n,求n的n次方的最后一位。#include#include#include#define maxn 1010#define INF 0x3f3f3f3f__int64 quick(__int64 a,__int64 b,__int64 m){ __int64 ans=1; while(b) { i原创 2015-07-15 15:21:37 · 363 阅读 · 0 评论 -
三角形相关
面积公式:1.S=1/2absinC=1/2acsinB=1/2bcsinA2.S=根号下原创 2015-07-15 16:15:25 · 420 阅读 · 0 评论 -
素数打表 HDU——1262 寻找素数对
#include#include#include#include#includeusing namespace std;#define maxn 10010#define INF 0x3f3f3f3fint isprime[maxn];int main(){ __int64 i,j,n,m; for(i=0;i<maxn;i++) isprime[原创 2015-07-15 15:16:36 · 358 阅读 · 0 评论 -
容斥原理 HDU——1796 How many integers can you find
应用:求 |AUBUC|-->集合A,B,C中不重复元素的总个数。S={1,2,3......600} 求其中被2,3,5除尽的数的数目。另A,B,C分别表示S中被2,3,5除尽的数。|A|=600/2=300 , |B|=600/3=200 |C|=600/5=120|A交B|=600/(2*3)=100 |A交C|=600/(2*5)=60原创 2015-07-15 15:25:17 · 424 阅读 · 0 评论 -
随机数
生成50个不重复的随机数(1-50之间)srand((int)time(0)); 或 srand(50); //产生0到49之间的随机数for(int i=0;i<50;i++){ int num=rand()%50+1; if(!vis[num]) { a[cnt++]=num; vis[num]=1; } els原创 2015-07-15 16:21:18 · 809 阅读 · 0 评论