NOIP初赛知识点2013 Pascal教导资料.ppt

  1. 1、本文档共108页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NOIP初赛知识点2013 Pascal教导资料.ppt

初赛知识复习 2012/9 什么是面向对象程序设计(模块化 ): 面向对象程序设计(英语:Object Oriented Programming,缩写:OOP),指一种程序设计范型,同时也是一种程序开发的方法论。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。 20世纪70年代的SmallTalk语言在面向对象方面堪称经典--以至于30年后的今天依然将这一语言视为面向对象语言的基础。 传统的面向过程程序设计 面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言 一种是纯面向对象语言,如Smalltalk、EIFFEL等 。 混合型面向对象语言,即在过程式语言及其它语言中加入类、继承等成分,如C++、Objective-C等。 Visual B\C, Java 竞赛环境的考察: 几类重要的递推关系: noip13 1.给定n 个有标号的球,标号依次为1,2,…,n。将这n 个球放入r 个相同的盒子里,不允许 有空盒,其不同放置方法的总数记为S(n,r)。例如,S(4,2)=7,这7 种不同的放置方法依次为 {(1),(234)}, {(2),(134)}, {(3),(124)}, {(4),(123)}, {(12),(34)}, {(13),(24)}, {(14),(23)}。当n=7,r=4 时,S(7,4)= _____________ noip14 2.书架上有21本书,编号从1到21,从其中选4本,其中每两本的编号都不相邻的选法一共有______种。 2、自然数n的拆分方案。 n=5,拆分数6 n=6,拆分数10 n=7,拆分数14 1:5=1+4 2:5=1+1+3 3:5=1+1+1+2 4:5=1+1+1+1+1 5:5=1+2+2 6:5=2+3 用母函数法: 当n=5时: 构造母函数如下: F(x)=(x0+x1+x2+x3+x4+x5)([x2]0+[x2]1+[x2]2)([x3]0+[x3]1) ([x4]0+[x4]1)([x5]0+[x5]1) =(1+x+x2+x3+x4+x5)(1+x2+x4)(1+x3)(1+x4)(1+x5) =1+x+2x2+3x3+5x4+7x5+…… 项a[i]Xi的系数a[i],a[i]-1即自然数i的拆分数. 减1是因为包含了i=i的一种拆分方案。 采用a,b,c三个数组,a:被乘数,b:乘数,c:乘积。 多个多项式采用逐次相乘的方法。每次借助k从b中取项。 3、将整数n分成k份,且每份不能为空,且最大值不超过m的分法 。任意两种分法不能相同(不考虑顺序)。 一、第二类Stirling数     问题一:放置小球 n个有区别的球放到m个相同的盒子中,要求无一空盒,其不同的方案数用S(n,m)表示,称为第二类Stirling数 设有n个不同的球,分别用b1,b2,……bn表示。从中取出一个球bn,bn的放法有以下两种: 1)bn独自占一个盒子;那么剩下的球只能放在m-1个盒子中,方案数为 S(n-1,m-1) 2)bn与别的球共占一个盒子;那么可以事先将b1,b2,……bn-1这n-1个球放入m个盒子中,然后再将球bn可以放入其中一个盒子中,方案数为 m*S(n-1,m) S(n,m)=m*S(n-1,m)+S(n-1,m-1) (n1,m1) 边界条件:S2(n,1)=1;S2(n,n)=1;S2(n,k)=0(kn) 问题二:集合划分问题。   设S是一个包含n个元素的集合,S={b1,b2,b3,…,bn},现需要将S集合划分为m个满足如下条件的集合S1,S2, …Sm。    Si≠∮;    Si∩Sj=∮;    S1∪S2∪…∪Sm=S; (1=I ,j=m) 则称S1,S2, …,Sm是S的一个划分。 编程:输入n和m的值,输出不同的划分方案数。 要求:输入数据有一行,第一个数是n,第二个数m。 样例: 输入:4 3 输出:6 二、Catalan数 问题一:凸n边形的三角形剖分 在一个凸n边形中,通过不相交于n边形内部的对角线,把n边形拆分成若干三角形,不同的拆分数目用f(n)表之,f(n)即为Catalan数。例如五边形有如下五种拆分方案,故f(5)=5。求对于一个任意的凸n边形相应的f(n)。 区域①是一个凸k边形,区域②是一个凸n-k+1边形, 区域①的拆分方案总数是f(k); 区域②的拆分方案数为f(n-k+1); 故包含△P1PkPn的n 边形的拆分方案数为f(k)* f(n-k+1)种 F(n)= 问题二:二叉树数目 问题描述

文档评论(0)

此项为空 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档