土木工程生产实习报告
摘要生产实习是土木工程专业教学中不必可少的实践教学环节,它是将我们在学校里所学的理论知识与工程实践的统一。在这次土木工程生产实习过程中,我以一个技术员的身份深入到建筑施工单位,以一个小高层住宅为实习场所,在现场技术员的指导下,我顺利的完成了我的实习任务。为我以后的工作也打下了一定的基础。基础决定上层建筑。而防水工程的好坏也将决定建筑的质量。我将在我的实习报告里介绍地下防水工程。
关键词地下防水工程防水卷材防水涂料
1引言
在学校里原本以为学习理论知识就够了,可是在这段建筑工程施工现场实习中,才发觉了理论与实践是有代沟的。深深体会到将理论用于实践的重要性,而且还要知道自己所学的理论知识与实践是否相关,也只有真正在实践中知道所学习的是否实用。
1.1实习目的
1)通过学习,对—般民用建筑施工前的准备工作、整个施工过程基本知识体系有较清晰的了解。
2)理论联系实际,巩固和深入理解已学的理论知识(如测量、建筑材料、建筑制图、建筑结构、建筑施工等),并为后续课程的学习积累感性知识。
3)通过亲身参加施工实践,培养分析问题和解决问题的独立工作能力,为将来参加工作打下基础。
4)通过工作和劳动,了解房屋施工的基本生产工艺过程(桩基础工程、钢筋工程,混凝土工程等)中的生产技术技术规范和监理细则。
1.2工程概况
工程名称:天景山小区k组团6#楼
建设单位:**科学园
设计单位:**市**建筑设计院
施工单位:******建筑工程有限公司
建筑面积:17817.99㎡
设计年限:50年
建筑结构安全等级:2级
2实习主要内容
与土建专业工程师一起,熟悉技术员工作的大致内容,在认真学习理论知识的同时,加强实践训练环节,深入工地,对基坑维护、基础垫层、地下室防水、钢筋制作等进行质量检查,还参与了场地标高、桩基工程的轴线及桩位的放置,对锤击法施工贯入度、桩顶标高的监督。 实习老师说施工部署方法也是相当重要的;以下是我简要的总结了一些:
一、加强计划的平衡安排,既有总计划,又有月、旬、周甚至日计划。特别是用料(包括设备周转)计划,更力求详尽、准确,杜绝待料而影响施工,并根据每周、每月完成作业计划的实际,及时调整下周或下月计划。在工作安排上,千方百计保证关键线路、关键工序的作业。
二、确保每日施工作业时间,以保证工期实现,只要是施工需要就加班加点完成,必要的工序可以采取两班或三班制,每班工作8~10小时。各工种之间尽量避开集中使用垂直运输机械的时间,充分利用夜间施工时间及闲置的设备,将下一个工作日所需材料提前运输到位。
三、配备足够的劳动力和施工管理人员,做到连续、均衡施工。
四、密切与各合作单位的联系协作,派专人对口、及时互通信息,保证施工顺利进行。 3地下防水工程
在整个实习过程中让我感触最深的是基础工程里的防水工程的做法。下面我将简单介绍地下防水工程。
防水工程施工在建筑工程里占有很重要的地位。防水工程的好坏会直接影响到人们的生活环境、生产活动和建筑物的使用寿命。所以在施工过程中一定要严格把关保证施工质量。 我国将地下防水工程划分为一级、二级、三级、四级、四个等级。根据材料的不同可分为刚性防水和柔性防水。目前常见的地下防水方案大致有以下几种:
1、防水混凝土方案:利用提高地下结构混凝土本身的密实性来实现防水要求,使其结构承重、维护、防水合为一体。
2、设防水层方案:在地下结构表面加设防水层。常用的防水层有水泥砂浆、卷材、防水涂料等防水层。
3、防排结合防水方案:即采用防水混凝土(防水层)加排水措施。排水方案可采用盲沟排水、渗排水等方法将地下水排走。[1]
我所实习的工程运用的是第二种设防水层的方法。就是利用铺设防水卷材和防水涂料来达到防水的目的。这种防水的方法也叫做柔性防水。下面我将结合我这次实习的工程实例来介绍以下这种防水方法。
3.1防水材料
地下卷材防水层是采用柔性的防水卷材做成多层防水。这种防水层具有良好的韧性和可变性,能适应结构振动和微小变形。目前常用的防水卷材有合成高分子防水卷材和高聚物改性沥青防水卷材。
合成高分子防水卷材是以合成橡胶或合成树脂为主要原料,再加入一定量的填充料、增塑剂、抗老化剂、增韧剂增强剂等辅料而成。根据其主体材料的不同可以分为橡胶性防水卷材和塑料性防水卷材。我本次实习的工程所用的卷材就是这种合成高分子卷材里的一种。合成高分子防水卷材的优点是抗拉强度高、延伸率大、耐温耐久性好、防水性能强等。
高聚物改性沥青防水卷材是在沥青中加入一定量的高聚物改性剂,使沥青自身固有的遇低温脆裂,遇高温流淌特性得到改善。使改进后的沥青具有良好的弹塑性、耐温性和防水性。高聚物改性沥青防水卷材是采用改性后的沥青作涂盖料,用聚酯毡、玻纤毡、聚乙烯膜等作胎体,用片岩、沙粒、金属薄膜等做面层,克服了纸胎油毡的缺陷,使其具有拉伸强度高、延伸率大、耐温和防水性能好的特点。[1]高聚物改性沥青防水卷材一般可分为弹性体、塑性体和橡塑共混体三类。
3.2防水卷材的铺贴方法
防水卷材的铺贴按卷材防水层的铺贴与防水结构施工的先后顺序可以分为外贴法和内贴法两种。[2]
(1)外贴法:在基础底板垫层上铺贴好底板卷材防水层后,进行地下防水结构的混凝土底板与墙体施工,待墙体侧模拆除后,再将卷材防水层直接铺贴在墙面上,然后砌筑保护墙。 外贴法的施工顺序是:先在基础混凝土底板垫层上做1︰3水泥砂浆找平层,待其干燥后,再铺贴底板卷材防水层,并在四周延伸出以便与墙身卷材防水层搭接。保护墙分为两部分,下部为永久性保护墙,高度不小于b+200(b为底板厚度),上部为临时保护墙,高度为450~600mm,当采用多层卷材施工时,其高度为150(n+1)mm(n为卷材层数)。 外贴法的优点是构筑物与保护墙有不均匀沉降时,对防水层影响较小,防水层做好后即可进行漏水试验,修补也方便。缺点是工期长,占地面积大,底板与墙身接头处卷材易受破损。
(2)内贴法:内贴法是在地下工程防水结构未做前,先砌筑保护墙,然后将卷材防水层铺贴在保护墙上,在进行地下工程结构施工。
内贴法施工顺序是先做结构底板垫层,砌结构外四周的保护墙,然后在垫层和保护墙上抹1︰3水泥砂浆找平层,待找平层干燥后涂刷基层处理剂,再铺贴卷材防水层。
内贴法的优点是防水层的施工比较方便,不必留接头,施工占地面积小。缺点是地下结构与保护墙发生不均匀沉降时,对防水层影响较大,竣工后如发现漏水较难维修。
我所在实习的工程所运用的是外贴法铺贴卷材。我认为一个工程的防水是很重要的。内贴法虽然施工方便但是维修较难,所以只在施工场地受限制时才采用内贴法施工。而外贴法虽然施工比内贴法麻烦但是维修方便,而且地基的不均匀沉降对它影响不大。
3.3防水涂料防水层
防水涂料是一种呈液态或半液态的物质,按涂料的液性状态可分为溶剂型、水乳型和反应型三种,按其物质的组成可分为合成高分子防水涂料、高聚物改性沥青防水涂料和沥青基防水涂料三类。
我所在实习的工程所用的是聚合物水泥防水涂料。聚合物水泥防水涂料又称JS复合防水涂料。JS复合防水涂料是以聚丙烯酸脂乳液、乙烯—醋酸乙烯共聚乳液等聚合物乳液与各种添加剂组成的有机液料,和水泥、石英砂及各种添加剂、无机填料组成的无机粉料,通过配合比、复合制成的一种双组分、水性建筑防水涂料。适用于潮湿或干燥的砖石、砂浆、混
凝土、金属、木材、硬塑料、玻璃、石膏板、泡沫板、以及沥青、橡胶、SBS、APP防水卷材,聚氨酯涂料等基面上施工。其施工方法有P3(三层)工法、P4(四层)工法和Q5(增强层)工法。JS复合防水涂料具有柔韧性好,强度、延伸率大,涂膜黏结力强,无毒、无害、无污染、施工简便等特性。[3]
4实习感想
令人难忘的工地实习结束了,在这一个多月里,我明白了实践是对科学知识的最好检验。在课堂上,我们学习的理论知识,如果在实际生活和工作当中不能够灵活运用,那一切将等于是零。实习就是将我们在课堂上所学到的理论知识运用到实战当中去。让我们成为对别人对社会有用的人,我们要做到适应当今飞速发展的社会,要能够确定自己的人生坐标,要能够实现自己的人生价值。
这次实习比较遗憾的就是只接触了基础的施工。在实习的过程中,我越来越觉得沟通的重要性。而沟通最重要的是首先要尊重人,无论是工人还是项目经理,都要谦逊对待,其次是要主动交流自己的想法,第一时间接触最新的情况,更扎实的打好专业基础。同时感觉我们以后身上所肩负的责任,现在住房是大多数公民奋斗很久才拥有的财产,我们要严抓质量关,同时也要保障公司的利益。同时我也体会到女生在工地的很多不方便,以后尽量走向设计或者造价等方向。
参考文献
1蒋根谋,陈进,周树发,等.建筑施工[M].北京:中国铁道出版社,2009:275~281. 2应惠清.土木工程施工[M].上海:同济大学出版社,2007:205~209.
3梁敦维.图解防水工基本技术[M].北京:中国电力出版社,2008:164~168.
第二篇:《专业生产实习报告》参考格式
专业生产实习报告 专 业:
班 级:
学 号:
姓 名:
指导教师:
(按班级填写)
年 月 日
目 录
(空两行) 1 XXXXXXXXXXXXXXXXXXX ???????????????页码 2 XXXXXXXXXXXXXXXXXXX ???????????????页码 (要求:给出一级目录,一律手写。)
1.实习的基本情况
1) 6月17号 星期一 下午2:30
报告 瑞信公司 地点 :2J报告厅
2)6月18日 星期二 下午2:30
报告 硬件组装讲座 地点:2J报告厅
3)6月21日 星期五 上午8:30
报告 网页设计讲座 地点:2J报告厅
4)6月21日 星期五下午2:30
网页设计实践(B座机房)
5)6月23日 星期日 上午9:00
报告: 鑫龙电器工程师讲座(2J报告厅)
6)6月23日 星期日 下午2:00
参观弋矶山医院
7)6月24日 星期一 上午8:30
报告 常用竞赛算法入门讲座 地点:2J报告厅
8)6月24日 星期一下午
硬件组装实践(B座5楼)
9)6月25日 星期二下午2:30
常用算法竞赛入门实践(B座机房)
2 实习的目的与效果
1)本实习是信息管理与信息系统专业的必修实践课程,是学生在进入专业课程学习之前的专业实习。通过实习使学生对专业内容有比较清楚的认识;对我国现行信息系统的建设和运行情况;信息管理制度、方法及实施情况;信息系统对企业或政府的决策的支持情况等有一定程度的了解,使学生熟悉信息管理的实际知识,培养学生调查、研究、观察和分析问题的能力,为专业基础课和专业技术课的学习打下良好的基础。
2)训练学生从事计算机领域专业技术工作及管理工作所必须的各种基本技能和实践动手能力,为以后走向工作岗位打下一定的基础。
3)巩固学生所学的各门课程的基础知识,将理论知识系统化,培养观察、分析和解决问题的能力、提高独立工作能力。
3 实习过程与具体工作内容:
一:瑞信公司:
1)安徽瑞信公司简介:
安徽瑞信软件公司,是一家专业从事软件开发和软件服务的高科技民营企业。瑞信软件公司自成立之日起,就以促进和发展信息化为己任,立足本省,着眼全国。作为专业的软件开发和服务公司,瑞信软件一方面与政府机构、企事业单位紧密合作,组建专业团队深入了解政府和企事业单位各职能领域的实践操作,另一方面不断跟踪和消化最新的软件产品和技术。在技术与经验双重保证下,瑞信软件公司已先后成功为省内外用户建设了近2000个信息化工程,是安徽公安行业、芜湖交通行业、电力行业、奇瑞汽车等信息化战略合作伙伴。 瑞信以“双赢和诚信”为企业精神,以“为客户着想 为明天努力”为经营和发展思想,以“软件就是服务 服务就是做人”为工作态度,公司不仅拥有近百名安徽IT行业的顶尖专业人才,以绝对的技术优势领先于同行,更以优质的服务获得用户好评。瑞信软件在开发方面,从项目规划、设计、编程、调试、测试到维护,每个环节都至臻至善。一批结合了管理实践经验和理论知识以及计算机技术于一身的复合型人才,为政府机构和企事业单位提供信息化咨询和服务,通过服务提高客户的工作效率和管理水平。
2)安徽全省派出所基础工作管理系统
1、应用定位
利用"实有人口"管理理念,使得警务人员能够准确快速的查找到派出所所有的管理对象,利用准确的数据指引警务人员的工作方向和针对性,提高公安局部门的工作效率.
2、项目简介
随着社会的发展,流动人口,暂住人口的管理已经日益的成为治安部门的头疼问题,"三口一屋"的管理模式,已经早已不能满足治安部门的需要,全国各地公安机关也被这种“系统中有此人,在系统中此人的居住地找却不到此人”的问题所困扰,可以说系统的很多数据都是垃圾数据,有时候不仅没有提高工作效率,反而形成的误导。为了解决这个难题,芜湖市公安局率先提出了“实有人口”管理模式,即管理实际现在居住在本市范围内的人,只要是驻留在芜湖市的人,都是管理的对象。人是流动的,管理起来非常的困难,我们知道房屋是静止的,我们同样知道人是要住房屋的,所以只要掌握好芜湖市所有房屋里面
居住的人,那么住在芜湖的所有的人也就被掌握了,他们的提出的概念叫做“以房管人”管理方法。 基于这种管理模式,瑞信与芜湖市公安局进行了紧密的合作,按照金盾工程信息化建设的标准,开发了现在的“派出所基础工作管理系统”,系统首先在芜湖市进行使用,在“实有人口”以及我们公司“派出所基础工作管理系统”平台的支撑下,系统的数据量和准确性都有的质的提高,给民警的工作带来了极大的方便,同时也给领导带来的对民警的科学考核。由于芜湖市公安局的“实有人口”的管理模式的先进性和科学行,他们相继受到了 安徽省公安厅领导,公安局张新枫副部长的大力表彰,系统相继由“马鞍山市公安局”,“合肥市公安局”.....后全安徽省省推广使用。现在全省所有的公安局都在紧锣密鼓的进行实有数据的采集工作,并取得了一定的成效。瑞信公司的“派出所基础工作管理系统”经过公安部的测试并且顺利通过,同时获得了安徽省的软件产品认证。
3)实习总结:
通过本次报告的详细介绍,我了解到系统平台在实际生活中的运用,并了解实际上软件开发与数据库之间的联系,加深了对应用软件开发的了解。
二:硬件组装讲座: 1)电脑硬件组成:
一台电脑是由许许多多的零部件组成,只有这些零部件组合在一起协调的工作,才能称之为电脑。电脑发展到现在,其零部件都有了很大的变化,但其工作原理却没有变,其中包括主板、CPU、内存、硬盘、显卡、声卡等等。下面将简单的介绍组成电脑的各个零部件。一台电脑是由许许多多的零部件组成,只有这些零部件组合在一起协调的工作,才能称之为电脑。电脑发展到现在,其零部件一台电脑是由许许多多的零部件组成,只有这些零部件组合在一起协调的工作,才能称之为电脑。电脑发展到现在,其零部件都有了很大的变化,但其工作原理却没有变,其中包括主板、CPU、内存、硬盘、显卡、声卡等等。下面将简单的介绍组成电脑的各个零部件。
1、主板
主板是整个电脑的基板,是CPU、内存、显卡及各种扩展卡的载体。主板是否稳定关系着整个电脑是否稳定,主板的速度在一定程度上也制约着整机的速度。
2、CPU
最新的赛扬4 1.7G
CPU就是中央处理器,也就是负责运算和控制的控制中心,是电脑的关键部位,相当于人的大脑一样。
3、内存
最新推出的DDR400
内存是电脑的一个临时存储器,它只负责电脑数据的中转而不能永久保存。它的容量和处理速度直接决定了电脑数据传输的快慢,和CPU、硬盘一起并称为电脑的三大件。
4、硬盘
硬盘是我们熟知的电脑配件之一,简单的说就是一个大容量存储器,与主机通讯速度很快,成为现代电脑不可缺少的配件。
5、显卡
GF4 TI4200显卡
显卡的作用就是提供对图像数据的快速处理,显卡也是电脑的重要组成部件之一,而且也是更新换代最快的一个部件,目前很多3D游戏对显卡的要求都很高,因此我们不得不掏钱从新买一块显卡来更新换代。
6、显示器
目前主流的17"纯平显示器
显示器,顾名思义就是电脑的一个显示设备,和电视原理差不多。一般来说,显示器的身价决定于它所采用的显象管,好的显象管可以提供更好的视觉效果,寿命也更长。
7、键盘、鼠标
无线鼠标和键盘
鼠标、键盘一直以来都不被许多人所重视,不过它们却是现代电脑不可缺少的输入设备,没有它们就相当于人没有手一样。
8、其它设备
现代电脑除了上面所列举的七大类配件外,还有很多的相关配件,包括有网卡、声卡、Modem、打印机、扫描仪,绘图仪、手写板等等很多东西,这里就不再一一列举。都有了很大的变化,但其工作原理却没有变,其中包括主板、CPU、内存、硬盘、显卡、声卡等等。下面将简单的介绍组成电脑的各个零部件。
2)硬件选取:
Cpu:主频,核心数量,多核心有利于处理多任务,缓存大小,是否配置3级缓存,制作工艺越高,功耗越低。
内存:规格:DDR2、DDR3、容量、主频、是否构成双通道价格。
硬盘:容量、转速、单碟、容量、缓存大小、可靠性、价格。
显卡:主板集成GPU
Intel G45、G43、G41、G31
AMD 890GX、880G、790GX、785G、780G
CPU集成GPU
Intel 酷睿i3 2100、i5 2300、i7 2600、 i7 2600k
ivy bridge 架构
i7 3770K、i5 3570K
融聚技术
Llano APU
移动版、桌面版
3)实习总结:通过本次报告实习,更了解计算机的内部构造,详细的了解当前在组装计算机时注意配件的参数,电脑性能的决定性因素。
三:网页设计讲座:
1)简介:
网页设计——网站是企业向用户和网民提供信息(包括产品和服务)的一种方式,是企业开展电子商务的基础设施和信息平台,离开网站(或者只是利用第三方网站)去谈电子商务是不可能的。企业的网址被称为“网络商标”,也是企业无形资产的组成部分,而网站是INTERNET上宣传和反映企业形象和文化的重要窗口。 2)主题鲜明
在目标明确的基础上,完成网站的构思创意即总体设计方案。对网站的整体风格和特色作出定位,规划网站的组织结构。
Web站点应针对所服务对象(机构或人)的不同而具有不同的形式。有些站点只提供简洁文本信息;有些则采用多媒体表现手法,提供华丽的图像、闪烁的灯光、复杂的页面布置,甚至可以下载声音和录像片段。好的Web站点把图形表现手法和有效的组织与通信结合起来。
为了做到主题鲜明突出,要点明确,我们将按照客户的要求,以简单明确的语言和画面体现站点的主题;调动一切手段充分表现网站点的个性和情趣,办出网站的特点。
Web站点主页应具备的基本成分包括:页头:准确无误地标识你的站点和企业标志;Email地址:用来接收用户垂询; 联系信息:如普通邮件地址或电话; 版权信息:声明版权所有者等。
充分利用已有信息,如客户手册.公共关系文档.技术手册和数据库等。
3)实战技巧
网页技术更新很快,一个网站的界面设计寿命仅仅2-3年而已。不管是垃圾还是精品,都没有所谓的经典,经典只存在于是哪个首次成功创新性的应用。一个闭门造车者做出的东
西,是远远赶不上综合借鉴者的。网页设计不同于其他艺术,在模仿加创新的网页设计领域当中,即便是完全自己设计的,也是沿用了人们已经认同的大部分用户习惯,而且这种沿袭的痕迹是非常明显的!还有哪个设计者敢腆着脸说,这都是我自己的原创设计?对于业界来说,经典只是个理念和象征!
4)讲座总结:
网页设计不只是一项技术活,更是一种审美与创造美的技术,在当今互联网的环境下,想维持某一样东西经久不衰几乎是不可能的,因而在软件行业,生机与维护显得很重要。
四:网页设计实践:
在本次上机实践中,主要是熟悉与了解网页设计用到的环境,并知道一些简单运用,在上机过程中,我是用Dreamweaver 8 作为网页设计的开发环境,但因为刚开始接触,所以只熟悉几个功能,但也感觉到网页设计其乐无穷,这是对个人能力的考验,更是创新与动手的结合。
五:鑫龙电器工程师讲座:
1)鑫龙电气公司简介:
19xx年 创办市电气设备厂
19xx年 股改,公司成立
20xx年 投资设立了安徽森源电器有限公司
20xx年 设立了安徽鑫龙自动化公司、安徽鑫龙低压电器有限公司、安徽鑫龙变压器 有限公司、安徽鑫龙电器元件销售有限公司等子公司
20xx年 投资设立了安徽鑫龙北京分公司、安徽鑫龙电力工程安装有限公司。 20xx年 投资设立了安徽佑赛科技有限公司
安徽鑫龙电器股份有限公司系国家级高新技术企业;国家产品免检企业;国家火炬计划企业,公司位于芜湖市经济技术开发区九华北路118号;占地近600亩;注册资本为人民币
3.3亿元。
2)网络架构:
3)实习总结:在鑫龙电气的这次讲座中,我了解到信息管理在当今企业中的运用,在财务,出货,进库等实际管理中,运用一个管理系统,可以很方便的了解公司各方面的情况,并制
定发展等规划,在有限的资源里 ,发挥更多的作用。
六:参观弋矶山医院
1)简介: 皖南医学院弋矶山医院坐落在安徽省芜湖市弋矶山风景区,1888年由美国基督教美以美会创办,迄今已有120年。国内著名医学专家吴绍青、沈克非、陈翠贞等人曾在医院任职,现为卫生部首批三级甲等医院、安徽首批“诚信医院”、全国爱婴医院、国家药品临床研究机构、全国卫生系统先进集体、省级文明单位、省园林式单位,是安徽省皖南及皖江地区的医疗、教学、科研、急救和预防指导中心。
2)信息管理系统:在芜湖弋矶山医院中主要应用为挂号预约等应用,
3) 实习体会:在本次实习过程中,我深刻感觉到信息管理系统在日常生活中所发挥的巨大作用,在这样一个信息系统的帮助下,能将医院资源最大化的利用,
七:常用竞赛算法入门讲座
1)分治策略:
主要思想:难以直接解决的大问题,分割成规模较小的相同问题。
分割:子问题互相独立。
分割成多少个?不一定,但应尽可能使子问题规模相当。
二分法搜索:在一个有序的序列中搜索某一个数
主要应用:
1Gray码是一个长度为2n的序列,序列中无相同元素,每个元素都是长度为n位的串,相邻元素恰好只有一位不同。用分治策略设计一个算法对任意的n构造相应的Gray码
2循环赛日程表:设有n=2k个运动员要进行网球循环赛,请设计一个满足以下要求的比赛日程表:
每个选手必须与其他n-1个选手各赛一次
每个选手一天只能赛一次
循环赛一共进行n-1天。
2)贪心算法:
什么是贪心算法? 总是要当前最好的
贪心算法是否有效? 不一定能得到最优解,一般可以得到次优解
什么样的问题适用贪心算法? 当前的最优选择必然是最优解的一部分时,可以使用贪心算法
贪心算法的关键 建立某种顺序,按此顺序进行最优选择,可以得到问题的
最优解。
主要应用:
1登山机器人:给定n 个登山机器人接力攀登的总高度m,及每个机器人连续攀登1 米,2 米,?,k米,所用的时间,编程计算最优攀登方案。
2计算两个数的最大公约数:1)每次对两个数取余,作为下次的除数。
(2)除数为0结束。
(3)除数为0时,被除数就是问题的解。
3一个楼梯有20级,每次可以走1级或2级,从底到顶有多少种走法?
分析:设n级楼梯从底到顶的走法有f(n)种。
走到第n级有两种走法
从n-1走1级
从n-2走2级
所以,f(n)=f(n-1)+f(n-2) ——递归方程
另:f(0)=1 f(1)=1 ——可终止
3)动态规划:
1动态规划的特征
问题可递归/递推求解(不一定是函数形式)。
子问题涉及重复计算。
2 什么样的问题适用动态规划?
大问题可分解为若干个小问题,大问题的最优解受子问题最优解的影响。
小问题间彼此相关。
3 动态规划的要素
已知的初始状态值(可直接有解的最小问题)。
状态转移方程(大问题的解的描述——必然与小问题相关)
中间值的记录(避免重复计算)。
主要应用:
1数塔问题:
图示为一个数字三角形。 请编一个程序计算从顶至底的某处的一条路径,使该路径所经过
的数字的总和最大。
●每一步可沿左斜线向下或右斜线向下走;
●1<三角形行数≤100;
●三角形中的数字为整数0,1,?99;
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
2最小乘车费用:【问题描述】
某条街上每一公里就有一汽车站,乘车费用如下表:
而一辆汽车从不行驶超过10公里。某人想行驶n公里,假设他可以任意次换车,请你帮他找到一种乘车方案使费用最小(10公里的费用比1公里小的情况是允许的)。
编一程序:从文件BUSSES.IN中读入对乘车费用的描述;算出最小的价格;把结果写入文件BUSSES.OUT中。
【输入文件】
输入文件共两行,第一行为10个不超过100的整数,依次表示行驶1~10公里的费用,相邻两数间用空格隔开;第二行为某人想要行驶的公里数。
【输出文件】
输出文件仅一行包含一个整数,表示该测试点的最小费用。
【输入样例】
12 21 31 40 49 58 69 79 90 101
15
【输出样例】
147
3最长有序子序列:拦截导弹:问题描述】
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。
输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。 4合唱队形:【问题描述】
N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2?,K,他们的身高分别为T1,T2,?,TK, 则他们的身高满足T1<...<Ti>Ti+1>?>TK(1<=i<=K)。你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列,可以使得剩下的同学排成合唱队形。
八:硬件组装实验: 在本次实际操作组装计算机实验中,见到cpu,gpu,内存等实物图,并详细了解芯片的一些插槽 :在计算机硬件组装中,一般都需要几个工具来辅助组装,主要有:平口螺丝刀、梅花螺丝刀、尖嘴钳等??
在计算机组装前一定要注意以下四点:1、防静电 2、轻拿轻放、尤其是硬盘 3、安装主板是一定要稳固,同时要防止主板变形4、一定要确保各个硬件没有通电,其次要注意各部件接口,虽然严格安装规范和要求,理论上不会发生接口反接现象,但如果要强行插入就有可能出现反接现象,而且容易导致硬件接口损坏,破裂。
硬件安装是有一定的基本步骤的:
1、机箱的安装:主要对机箱进行拆封,并将电源安装在机箱里
2、CPU的安装:在主板处理器插座上插入CPU,并安装散热风扇
3、主板的安装:将主板安装在机箱底板上
4、内存条的安装:将内存条插入主板的内存插槽中
5、显卡的安装:??
6、机箱与主板间的连线:即各种指示灯,电源开关线,PC喇叭的连接,以及硬盘、光驱电源线和数据线的连接。
九:常用算法竞赛入门实践
题目1:循环比赛日程表
设有N个选手进行循环比赛,其中N=2M,要求每名选手要与其他N-1名选手都赛一次,每名选手每天
比赛一次,循环赛共进行N-1天,要求每天没有选手轮空。
【输入文件】
M
【输出文件】
表格形式的比赛安排表
【样例输入】
3
【样例输出】
1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 2 1 4 3
7 8 5 6 3 4 1 2 8 7 6 5 4 3 2 1
#include<stdio.h>
#include<math.h>
void gametable(int k)
{
int a[100][100];
int n,temp,i,j,p,t;
n=2;//k=0两个参赛选手日程可以直接求得
a[1][1]=1;a[1][2]=2;
a[2][1]=2;a[2][2]=1;
for(t=1;t<k;t++)//迭代处理,依次处理2^n....2^k个选手的比赛日程
{
temp=n;n=n*2;//填左下角元素
for(i=temp+1;i<=n;i++)
for(j=1;j<=temp;j++)
a[i][j]=a[i-temp][j]+temp;//左下角和左上角元素的对应关系
for(i=1;i<=temp;i++)//将左下角元素抄到右上角
for(j=temp+1;j<=n;j++)
a[i][j]=a[i+temp][(j+temp)%n];
for(i=temp+1;i<=n;i++)//将左上角元素抄到右下角
for(j=temp+1;j<=n;j++) a[i][j]=a[i-temp][j-temp];
}
printf("参赛人数为:%d\n(第i行第j列表示和第i个选手在第j天比赛的选手序号)\n",n); for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
printf("%d ",a[i][j]);
if(j==n) printf("\n");
} } void main()
{
int k;
printf("比赛选手个数为n(n=2^k),请输入参数K(K>0):\n");
scanf("%d",&k);
if(k!=0)
gametable(k);
}
题目2:登山机器人
【问题描述】
登山机器人是一个极富挑战性的高技术密集型科学研究项目,它为研究发展多智能体系统和多机器人之间的合作与对抗提供了生动的研究模型。登山机器人可以携带有限的能量。在登山过程中,登山机器人需要消耗一定能量,连续攀登的路程越长,其攀登的速度就越慢。在对n 种不同类型的机器人作性能测试时,测定出每个机器人连续攀登1米,2米,?,k 米,所用的时间。现在要对这n个机器人作综合性能测试,举行机器人接力攀登演习。攀登的总高度为m 米。规定每个机器人只能攀登1次,每次至少攀登1 米,最多攀登k 米,而且每个机器人攀登的高度必须是整数,即只能在整米处接力。安排每个机器人攀登适当的高度,使完成接力攀登用的时间最短。
编程任务:
给定n 个登山机器人接力攀登的总高度m,及每个机器人连续攀登1 米,2 米,?,k米,所用的时间,编程计算最优攀登方案。
【输入文件】
由文件input.txt给出输入数据。第一行是正整数n,k和m分别表示机器人的个数,每个机器人最多可以攀登的高度,和攀登的总高度。接下来的n行中,每行有k 个正整数,分别表示机器人连续攀登1米,2米,?,k 米所用的时间
【输出文件】
将计算出的最短攀登时间输出到文件output.txt
?
?
?
?
?
?
?
?
? #include <iostream> #include <vector> using namespace std; int main() { vector < vector<int> > timenum; vector<int>line; int jqrnum,maxlength,alllength,tmp=0,result=0,i,j,backtmp; cin >> jqrnum >> maxlength >> alllength;
?? for(i=0;i<jqrnum;i++)
?? {
?? timenum.push_back(line);
?? for( j=0;j<maxlength;j++)
?? {
?? if(j==0)
?? {
?? cin>>tmp;
?? backtmp=tmp; //记录上一次的使用时间,以便计算以后每次走一米所需的时间
?? timenum[i].push_back(tmp); //记录每次走这一米所需的时间 ?? }
?? else
?? {
?? cin>>tmp;
?? timenum[i].push_back(tmp-backtmp);
?? backtmp=tmp;
??
?? }
??
?? }
?? }
?? int tmpmax=0,mark=0;
?? while(alllength)
?? {
?? j=0;
?? while(timenum[j].empty()) //判断此机器人是否已经走到最多可走的步数 ?? {
?? j++;
?? }
?? tmpmax=timenum[j].front(); //此机器人当前步数所需的时间
?? mark=j;
?? for(i=j;i<jqrnum;i++)
?? {
?? if(!timenum[i].empty())
?? {
?? if(tmpmax>timenum[i].front())
?? {
?? tmpmax=timenum[i].front(); //如果有需要更少时间的,则替换 ?? mark=i; //记录此机器人的位置,以便后续删除 ?? }
?? }
?? }
?? timenum[mark].erase(timenum[mark].begin()); //删除vector中此机器人走此步所需的时间,以便每次遍历时,首值都是他再走时所需的时间
?? result+=tmpmax;
?? alllength-=1;
?? }
?? cout<<result<<endl;
?? return 0;
??
?? }
题目3:数塔问题
图示为一个数字三角形。 请编一个程序计算从顶至底的某处的一条路径,使该路径所经过的数字的总和最大。
●每一步可沿左斜线向下或右斜线向下走;
●1<三角形行数≤100;
●三角形中的数字为整数0,1,?99;
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
【输入文件】
第一行是一个整数N(2<=N<=100),表示数塔的层数。接下来的N行为整个数塔。
【输出文件】
包括一行,这一行只包含一个整数, 为最大的数字总和。
【样例输入】
5
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
【样例输出】
30
?
?
?
?
?
?
?
?
? #include <iostream> #define MAX 20 using namespace std; int main() { cout << "Please input N(lines)" << endl; int n; cin >> n; int a[MAX+1][MAX+1][3]; //[0]用来存数,[1]参与运算,[2]表示向左(0),还是向右
(1)
?? //输入数塔
?? for(int i = 1; i <= n; ++i)
?? {
?? cout << "Please input line " << i << endl;
?? for(int j = 1; j <= i; ++j) //第i行有i个数
?? {
?? cin >> a[i][j][0];
?? a[i][j][1] = a[i][j][0];
?? a[i][j][2] = 0;
?? }
?? }
?? cout << endl;
?? //计算
?? for(int i = n-1; i >= 1; --i) //从倒数第二行开始
?? {
?? for(int j=1; j <= i; j++)
?? {
?? if (a[i+1][j][1] > a[i+1][j+1][1]) //左边大
?? {
?? a[i][j][2] = 0; //选择左边
?? a[i][j][1] += a[i+1][j][1];
?? }
?? else //右边大
?? {
?? a[i][j][2] = 1; //选择右边
?? a[i][j][1] += a[i+1][j+1][1];
?? }
?? }
?? }
??
?? //输出数塔
?? for(int i = 1; i <= n; ++i)
?? {
?? for(int j = 1; j <= i; ++j)
?? {
?? cout << a[i][j][0] << " ";
?? }
?? cout << endl;
?? }
?? //输出最大值
?? cout << a[1][1][1] << endl;
?? //输出路径
?? for(int i = 1, j = 1; i<= n; ++i)
?? {
?? cout << "[" << i << "," << j << "]" << " -> ";
?? j += a[i][j][2];
?? }
?? cout << endl;
?? return 0;
?? }
题目4:合唱队形
【问题描述】
N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2?,K,他们的身高分别为T1,T2,?,TK, 则他们的身高满足T1<...<Ti>Ti+1>?>TK(1<=i<=K)。你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列,可以使得剩下的同学排成合唱队形。
【输入文件】
第一行是一个整数N(2<=N<=100),表示同学的总数。第二行有n个整数,用空格分隔,第i个整数Ti(130<=Ti<=230)是第i位同学的身高(厘米)。
【输出文件】
包括一行,这一行只包含一个整数,就是最少需要几位同学出列。
【样例输入】
8
186 186 150 200 160 130 197 220
【样例输出】
4 #include<iostream>
using namespace std;
int Queue[110],Inc[110],Dec[110];
int main()
{
int N;
scanf("%d",&N);
for(int i=0;i<N;i++)
scanf("%d",&Queue[i]);
memset(Inc,0,sizeof(Inc));
memset(Dec,0,sizeof(Dec));
for(int i=0;i<N;i++)
{
Inc[i]=1;
for(int j=0;j<i;j++)
{
if(Queue[i]>Queue[j]&&Inc[j]+1>Inc[i])
Inc[i]=Inc[j]+1;
}
}
for(int i=N-1;i>=0;i--)
{
Dec[i]=1;
for(int j=N-1;j>i;j--)
{
if(Queue[i]>Queue[j]&&Dec[j]+1>Dec[i])
Dec[i]=Dec[j]+1;
}
}
int max=0;
for(int i=0;i<N;i++)
{
if(Inc[i]+Dec[i]>max)
max=Inc[i]+Dec[i];
}
printf("%d\n",N-max+1);
return 0;
}
题目5:采药
【问题描述】
辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”
如果你是辰辰,你能完成这个任务吗?
【输入文件】
输入文件medic.in的第一行有两个整数T(1 <= T <= 1000)和M(1 <= M <= 100),用一个空格隔开,T代表总共能够用来采药的时间,M代表山洞里的草药的数目。接下来的M行每行包括两个在1到100之间(包括1和100)的整数,分别表示采摘某株草药的时间和这株草药的价值。
【输出文件】
输出文件medic.out包括一行,这一行只包含一个整数,表示在规定的时间内,可以采到的草药的最大总价值。
【输入样例】
70 3
71 100
69 1
1 2
【输出样例】
3 ?
?
?
?
?
?
?
?
? #include <iostream> using namespace std; #define N 100 int time[N],price[N]; int dp[N][N]; //比较两个数的大小 int max(int a,int b){
??
?? if(a>b){
?? return a;
?? }
?? else{
?? return b;
?? }
?? }
??
?? //n件药 t时间内
?? void cal(int n,int t,int tt[],int pp[]){
??
?? int i,j;
?? for(i=1;i<=n;i++){ //n件物品内
?? for(j=0;j<=t;j++){//在规定的时间内
?? if(j>=tt[i]){ //如果大于某个物品的时间内那么就要考虑选择哪件物品 ?? dp[i][j]=max(dp[i-1][j],dp[i-1][j-tt[i]]+pp[i]); ?? }
?? else{
?? dp[i][j]=dp[i-1][j];
?? }
?? }
?? }
??
?? }
??
?? int main(){
??
?? int i,j,T,M;
?? while(cin>>T>>M){
?? memset(dp,0,sizeof(dp));//初始化
?? for(i=1;i<=M;i++){
?? cin>>time[i]>>price[i];
?? }
?? cal(M,T,time,price);
?? cout<<dp[M][T]<<endl;
?? }
?? return 0;
?? }
4 总结与体会