自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

TT成成的博客

行事不以利益而往,做事不违本性。-----------罗孚

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

转载 错位排列递推公式推导

全错位排列:即被著名数学家欧拉(Leonhard Euler,1707-1783)称为组合数论的一个妙题的“装错信封问题”。“装错信封问题”是由当时最有名的数学家约翰·伯努利(Johann Bernoulli,1667-1748)的儿子丹尼尔·伯努利(DanidBernoulli,1700-1782)提出来的,大意如下:一个人写了n封不同的信及相应的n个不同的信封,他把这n封信都装错了

2015-12-01 17:11:15 19581

原创 HDU1176 免费馅饼 经典DP

题目 地址http://acm.hdu.edu.cn/submit.php?pid=1176类似i数塔问题,从下往上找核心思想:dp[j][i]+=max(dp[j+1][i],dp[j+1][i-1],dp[j+1][i+1])完整代码#include #include #include #define maxn 100005int dp[maxn][11];i

2015-12-21 21:03:26 1056

原创 C语言申明1000000以上数组的方法

通常用两个办法解决这个问题:声明一个全局数组。就是在所有函数之外声明,如int a[1000000];就可以了。在需要的函数中用malloc函数动态申请内存,如int *pt=(int *)malloc(sizeof(int)*1000000);就可以了。用完后要用free(pt);释放所申请的内存空间。

2015-12-15 17:28:53 7565

转载 (hash)hdu 1496 Equations

//引用冬月之神的帖子,尊重原创,传送门EquationsTime Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 899    Accepted Submission(s): 356Problem Descrip

2015-12-15 17:24:26 401

原创 hdu 2602 bone_collector

#include //please use C++ compiler#define maxn 1005//obviously 0-1bagsint main(){ int T,n,V,i,j,dp[maxn],w[maxn],v[maxn]; scanf("%d",&T); while(T--) { memset(dp,0,sizeof(dp

2015-12-10 16:46:03 387

转载 C语言快排模板 qsort();函数应用

///////////////////快速排序模板/////////////转载编程学习笔记的博客,源地址请点击,感谢”编程学习笔记“博主的辛勤付出。//部分验证,推理得出。内容基本可靠!////////////////////对int/char/float/double整形数组的快排/////////////////////#include #include

2015-12-09 21:18:37 908

转载 HDU 1249 三角形

题目分析:当已经有k-1个三角形时,加入一个三角形,每一条边穿过k-1个三角形的其中一角,则已有的k-1个三角形的每一个角都被分成了k-1个,因为每加入一个三角形,原来已有的三角形的每一个角都会被多分成一份。而新加入的三角形的一角,被k-1个角中的每两个角分割出一个新三角形(共k-2个),加上角本身的大区域,所以一角被分成了k-1份。这时图中有k个三角形,每个三角形3个角,每个角被分成了k-1份,

2015-12-08 17:46:11 437

转载 对拍调试

做ACM题时如何确定自己算法是否正确,可以采用可靠的暴力算法与最优算法结果相对比的方法请看该帖http://m.blog.csdn.net/blog/churehill123/19647579

2015-12-05 23:24:30 418

原创 2015广东工业大学新生赛决赛 Problem I: Stubird说这是水题

//2015广东工业大学新生赛决赛//Problem I: Stubird说这是水题//思想很简单,只要有相同的数,就可以用同一竖直列来,不同的话就需要分别的两竖直列来表示#include #include int main(){ int T,i,j,m,n,a[205],b[205]; scanf("%d",&T); while(T--) {

2015-12-05 23:04:54 1586

原创 HDU 1215 求N的因子之和

首先是暴力破解优化,最先想到的#include #include int main(){ int n,m,i; scanf("%d",&n); while(n>0) { n--; scanf("%d",&m); int sum=1,t=sqrt(m);//暴力2-sqrt(m)所有数不会超时,1-m/2

2015-12-03 20:02:01 533

转载 HDU 1029 Ignatius and the Princess IV

/*多元素即在数列中出现次数多于n/2的元素 ————采用这个方法的前提我们很容易的看出来,在一个序列中如果去掉2个不同的元素,那么原序列中的多元素,在新的序列中还是多元素,因此我们只要按照序列依次扫描,先把t赋值给result,增加个计数器,cnt = 1;然后向右扫描,如果跟result相同,则cnt++,不同,那么cnt --,这个真是我们从上面那个结论里得出的,一旦cnt

2015-12-01 21:28:08 373

原创 HDU 5538 house building

就是求表面积,我是用侧面积+加上面积的方法4*方块数是总的侧面积,减去接触面就等于实际侧面积看代码#include #include int main(){    int squire,m,n,t,a[50][50];    scanf("%d",&t);    while(t>0)    {        int i,j,topsum=0,sum=0;

2015-12-01 20:13:34 623

原创 hdu 1273 森林漫步

原题链接点击打开链接原理看到数据中的 (0找规律:因为 任意两块空地之间都有一条小径相通  ,所以每个空地度都是一样的 为n-1;二要形成一个环路需要一进一出两度,故 次数为(n-1)/2;#includeint main(){ int n; while(scanf("%d",&n),n!=0) printf("%d\n",(n-1)/2);

2015-12-01 19:00:55 493

原创 HDU 2048 数塔 动态规划

#include //#include int main(){ int i,j,m,n,a[101][101],dp[101][101]; scanf("%d",&m); while(m>0) { m--; scanf("%d",&n); for(i=0; i<n; i++) for(j=

2015-12-01 18:02:17 629

原创 素数筛选法之埃拉托色尼筛

埃拉托色尼筛选法下面求1-100的所有素数Codes 1:#include #include #define true 1#define false 0int main(){ int i,j,prime[101]; for(i=0; i<=100; i++) prime[i]=i; memset(prime,true,sizeof(pr

2015-12-01 17:07:26 781

空空如也

空空如也

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

TA关注的人

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