- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
每周回顾与作业(十三)集合+递推+高精度.doc
每周回顾与作业(十三)集合+递推+高精度
1、集合类型的定义形式为:集合类型名=set of 基类型 如var n: set of char;
集合类型是一种使用简便,节省内存面又运算速度快的数据类型。
2、集合的运算
空集合:[]
集合并交差
并:用+表示,例如[1,3,4]+[1,2,4]=[1,2,3,4]
交:用*表示,例如[1,3,4]*[1,2,4]=[1,4]
差:用-表示,例如[1,3,4]*[1,2,4]=[3]
关系运算:集合可以进行,,=,等运算,规则是元素多的大于元素少的。
包含判断:IN,例如1 in [1,3,4]是True; 2 in [1,3,4]是False。
集合运算中元素的次序是不重要的。
集合运算相当快,在程序中常用集合表达式来描述复杂的测试。如
A)条件表达式: (ch=T) or (ch=t) or (ch=Y) or (ch=y) 可用集合表达式表示为:
ch in [T,t,Y,y]
B)if (ch=20) and (ch=50) then ...;
可写成: if ch in [20..50] then ...;
注意:集合类型变量不能进行算术运算,了不允许用读/写语句直接输入/输出集合。 所以集合的建立:A)要通过赋值语句实现;
B)或先初始化一个集合,然后通过并运算向集合中逐步加入各个元素.
集合元素是无序的,所以ord,pred和succ函数不能用于集合类型的变量。
☆运用集合完成筛法找素数。program pset;
const n=200;
type abc=set of 2..n;
var sieve,prime:abc; { sieve用来装2-n之间的整数,prime放筛出的素数 }
next,j:integer;
begin
sieve:=[2..n]; prime:=[]; next:=2;
repeat
while not (next in sieve) do next:=succ(next);{next是整形,可以用后继函数,相当+1}
prime:=prime+[next]; {第一次把2放到prime中}
j:=next;
while j=n do begin sieve:=sieve-[j]; j:=j+next; end;{从sieve中去掉所有next的倍数}
until sieve=[];
j:=0;
for next:=2 to n do
if next in prime then
begin write(next:5); j:=j+1 if j=10 then begin writeln; j:=0; end; end;
end.
☆例一:过河卒
const
maxn=20;
maxm=20;
dx:array[1..8] of integer=(2,1,-1,-2,-2,-1, 1, 2);
dy:array[1..8] of integer=(1,2, 2, 1,-1,-2,-2,-1);
var
f:array[0..maxn,0..maxm] of int64;
g:array[-2..maxn+2,-2..maxm+2] of boolean;
n,m,x,y:integer;
i,j:integer;
begin
readln(n,m,x,y);
fillchar(f,sizeof(f),0);
fillchar(g,sizeof(g),true);
g[x,y]:=false;
for i:=1 to 8 do
g[x+dx[i],y+dy[i]]:=false
if g[0,0] then f[0,0]:=1;
for i:=1 to m do
if g[0,i] then f[0,i]:=f[0,i-1];
for i:=1 to n do
if g[i,0] then f[i,0]:=f[i-1,0];
for i:=1 to n do
for j:=1 to m do
if g[i,j] then f[i,j]:=f[i-1,j]+f[i,j-1];
writeln(f[n,m]);
end.
例二:凸多边形的三角剖分
program p2_2(input,output);
const max=21;
var c:array[2..max] of longint;
n,i,k:integer;
total:longint;
begin
wri
您可能关注的文档
- 梅林街道2013年收支预算总表.doc
- 梅河口市2015年度国有建设用地供应计划.doc
- 梅特勒分析天平-型号-AL104-的称重说明及参数.doc
- 梓潼县农村文化活动演出专用设备采购清单.doc
- 梦之旅—单项服务委托确认单.doc
- 梦在心间,路在脚下.doc
- 梦想启航 成就未来.doc
- 梦想的变身 近在咫尺.doc
- 梦想起源于威客.doc
- 梦想进校园·精彩绘人生.doc
- 2025至2030中国移动治疗台行业发展研究与产业战略规划分析评估报告.docx
- 2025至2030链激酶行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030爆炸物探测扫描仪行业市场占有率及有效策略与实施路径评估报告.docx
- 2025至2030四川省智能制造行业细分市场及应用领域与趋势展望研究报告.docx
- 2026届高三二轮复习试题政治大单元突破练1生产资料所有制与分配制度含解析.docx
- 2026届高三二轮复习试题政治大单元突破练16哲学基本思想与辩证唯物论含解析.docx
- 2026届高三二轮复习试题政治大单元突破练2社会主义市场经济体制含解析.docx
- 浙江省衢州市五校联盟2025-2026学年高二上学期期中联考技术试题-高中信息技术含解析.docx
- 浙江省金丽衢十二校2026届高三上学期11月联考政治试题含解析.docx
- 2026届高三二轮复习试题政治大单元突破练7领导力量:中国共产党的领导含解析.docx
最近下载
- 浙江农村信用社招聘-2025台州温岭农商银行寒假实习生招聘招聘笔试备考试题及答案解析.docx VIP
- 基于AT89C51的智能加湿器的设计与仿真.docx VIP
- 绿化养护项目方案投标文件(技术标).doc
- 简明国际神经精神障碍访谈检查(MINI)中文版.pdf VIP
- 英语不规则动词变化规律 .pdf VIP
- 浙江农村信用社招聘-2025台州温岭农商银行寒假实习生招聘招聘笔试备考题库及答案解析.docx VIP
- 苏霍姆林斯基《给教师的一百条建议》(98~100).pdf VIP
- 小沈阳宋晓峰杨树林小品《江北四大才子》招亲剧本台词完整版.doc
- 银行业务宣传品(玻璃杯、保温杯、茶水分离杯)采购项目投标方案.docx
- 四川省巴中市2024-2025学年九年级上学期期末化学试题(含答案).pdf VIP
原创力文档


文档评论(0)