SCOI2015题解 && 考试小结】的更多相关文章

Day1: 第一题:裸地二分+网络流:二分答案,连接将每行每列拆成点,对于满足答案的格子行列连边,看是否流量是否大于t即可,可惜第k大看成了第k小,然后100分就没了. 第二题:倍增,考虑贪心算法,就是考虑选了当前的线段,下一次选的必定是左端点小于当前右端点,右端点尽量靠后的线段,因此在化环为链后,预处理每一个线段的后继状态,当我门选了一条线段后,剩下的选择一定按照刚才的思路选择,所以像lca一样倍增处理每个线段跳2^i次后的位置,对于每一个询问,O(logn)时间向后跳直到覆盖所有区间. 第三…
这次NOI2015有幸获得金牌考进了国家集训队,意味着我的OI退役时间既省选之后有延迟了好几个月,又有了新的目标吧. 先说一下考试之外的感受吧,学军宿舍很牛X,接待NOIers而不提供插座,唯一可以用的空调插座有因为“安全原因”不允许使用(拜托会不会比一比电脑,空调哪个功率大啊).食堂没有冬令营的好吃,也许是当时压力比较大吧.据不完全统计,光是四川选手,为学军周边咖啡馆贡献的营业额就高达数千RMB,真是hehe了. 考前,一年前于神在NOI开始前看了“三傻大闹宝莱坞”,于是我也在考前看了“三傻大…
T1: 题目大意:现有一个以1为根节点的树,要求从1开始出发,经过下面的点然后最终要回到根节点.同时除了根节点之外各点均有一个权值(即受益,每个点上的收益只能拿一次,且经过的话必须拿),同时除了根节点外各点均有一个经过次数的限制,要求求出来从根节点出发回到根节点的最终受益总和的最大值,以及这个最大值是否存在多种方式可以做到(单纯的访问顺序不同算一种) 题解:很明显的树状DP,关于每一个节点均转移一下,取最前面的一些(注意出现负数的话不管怎么样直接无视,但是0不要直接扔),然后再取最大的求和即可(…
前言: 今天考试很迷糊.从7点考到11点半,我大概从7点睡到9点.隐隐约约看到旁边的狗哥敲了好几个题,我才开始写代码.然后因为还是很困,而且T1迷迷糊糊调了好长时间,T3T4的暴力就懒的写了... 估分120,实际得分120. 暴力写法如下: T1 循环依赖 一眼的sb题,然而读入稍有毒瘤.本来以为每个测试点100组数据会很卡时间,于是卡了很长时间的常.然而最后数据并没有卡,差评. 代码: #include <bits/stdc++.h> using namespace std; typede…
感谢@guz 顾z的题题解 考试共三道题,其中 第一题help共10个测试点,时间限制为 1000ms,空间限制为 256MB. 第二题escape共20个测试点,时间限制为1000ms2000ms,空间限制1MB16MB. 第三题cure共20个测试点,时间限制为 1000ms,空间限制为 256MB. PS:题目背景与题目本身无关,可跳过 help 题目背景 在梦中,王 小 呆 到了一个神秘的地方.这里是昆虫王国!国王见王 小 呆 好生俊俏,便给了他一杯昆虫国的老白干.王 小 呆一口下肚,突…
NOIP2016考试小结 DAY 1 T1 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业. 有一天, 这些玩具小人把小南的眼镜藏了起来. 小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外.如下图: 这时singer告诉小南一个谜題: “眼镜藏在我左数第3个玩具小人的右数第1个玩具小人的左数第2个玩具小人那里. ” 小南发现, 这个谜题中玩具小人的朝向非常关键, 因为朝内和朝外的玩具小人的左右方向是相反的: 面朝圈内的玩具小人, 它的左边是顺时针方向, 右边是逆时针方向;…
2019 秋季 PAT (Advanced Level) C++题解 考试拿到了满分但受考场状态和知识水平所限可能方法不够简洁,此处保留记录,仍需多加学习.备考总结(笔记目录)在这里 7-1 Forever (20 分) "Forever number" is a positive integer A with K digits, satisfying the following constrains: the sum of all the digits of A is m; the…
T1 一道很妙的题,打暴力分也很多,但是考试的时候忘开 long long 了. 题解 T2 一道挺水的题,不过...(打挂了) 题解 T3 此题甚妙,转化真多,不过对思维是一个非常大的扩展 题解 考试估分:75+50+25=150 实际分数:70+0+0=70 不用返回值的函数一定要写成 \(void\) 啊!!!…
前言: 知识点运用:正则表达式,有关图形设计计算的表达式和算法,链表的相关知识,Java类的基础运用,继承.容器与多态. 题量:相较于上次作业,这几周在java方面的练习花了更多的精力和时间,所要完成的任务都变得更新颖复杂,难度也逐渐增加. 设计与分析: (这里主要挑了一些重点,及对笔者而言难度较大及体会深刻的题目) PTA题目集题目小结: ①题目集四--7-2(线的计算): 题目: 用户输入一组选项和数据,进行与直线有关的计算.选项包括:1:输入两点坐标,计算斜率,若线条垂直于X轴,输出"Sl…
又是虚脱的一天啊QAQ,早上习惯性迟到,九点多到学校开始码题,六道题看下来花了将近一个小时,主要纠结于第二题和第六题.到了十点,没再深入思考,开始码题.. 一直到十一点半,写了两道题.然后吃完饭后中午把剩下会的两道题水了水就开始去主攻第六题,第二题感觉不是很有思路. 然后就从三点想到四点,中间考量了很多算法好像都不行,但我能确定这是一道最短路的计数问题,相关的题目之前做过一道,但是面对这道题还不是很有想法.无奈,最后码了暴力走人. 今天没精力再改题了,一会还要补文化课的作业,具体的题解和小结什么…
题目描述       FJ打算好好修一下农场中某条凹凸不平的土路.按奶牛们的要求,修好后的路面高度应当单调上升或单调下降,也就是说,高度上升与高度下降的路段不能同时出现在修好的路中. 整条路被分成了N段,N个整数A_1, ... , A_N (1 <= N <= 2,000)依次描述了每一段路的高度(0 <= A_i <= 1,000,000,000).FJ希望找到一个恰好含N个元素的不上升或不下降序列B_1, ... , B_N,作为修过的路中每个路段的高度.由于将每一段路垫高或…
题目描述 In an effort to better manage the grazing patterns of his cows, Farmer John has installed one-way cow paths all over his farm. The farm consists of N fields, conveniently numbered 1..N, with each one-way cow path connecting a pair of fields. For…
题目描述 HH有个一成不变的习惯,喜欢饭后百步走.所谓百步走,就是散步,就是在一定的时间 内,走过一定的距离. 但是同时HH又是个喜欢变化的人,所以他不会立刻沿着刚刚走来的路走回. 又因为HH是个喜欢变化的人,所以他每天走过的路径都不完全一样,他想知道他究竟有多 少种散步的方法. 现在给你学校的地图(假设每条路的长度都是一样的都是1),问长度为t,从给定地 点A走到给定地点B共有多少条符合条件的路径 输入 第一行:五个整数N,M,t,A,B. N表示学校里的路口的个数 M表示学校里的 路的条数…
题目描述 FGD开办了一家电话公司.他雇用了N个职员,给了每个职员一部手机.每个职员的手机里都存储有一些同事的电话号码.由于FGD的公司规模不断扩大,旧的办公楼已经显得十分狭窄,FGD决定将公司迁至一些新的办公楼.FGD希望职员被安置在尽量多的办公楼当中,这样对于每个职员来说都会有一个相对更好的工作环境.但是,为了联系方便起见,如果两个职员被安置在两个不同的办公楼之内,他们必须拥有彼此的电话号码. 输入 第一行包含两个整数N(2<=N<=100000)和M(1<=M<=200000…
一.PTA实验作业 题目1:查验身份证 1. 本题PTA提交列表 2. 设计思路 定义i,flag=1,z,m[11],a[19] 输入次数n for i=1 to n+1 gets(a) 加权求和在取余计算z switch(z) 对应查看a[17]与校验码是否一致 若不一致,flag=0,输出错误身份证 若flag=1,则说明全对 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明. 部分正确 :将x改为大写x 题目2:藏头诗 1. 本题PTA提交列表 2. 设计思路 3.代码截图…
一.PTA实验作业 题目1:找鞍点 1. 本题PTA提交列表 2. 设计思路 定义n,i,j,ii,jj,a[7][7],flag,max 输入n for i=0 to i=n for j=0 to j=n 读入二维数组 end for i=0 to i=n max=0,flag=1 for j=0 to j=n if a[i][j]大于max max=a[i][j] jj=j记录下这一列 end for ii=0 to ii=n if max大于a[i][j] flag=0 break end…
一.PTA实验作业 题目1(7-6) (1).本题PTA提交列表 (2)设计思路 //天数n:数组下标i:小时数h,分钟数m:对应书号的标签数组flag[1001] //总阅读时间sum初始化为0,借书次数k初始化为0 //E或S的标志ch: //定义a[1001]来放每本书的借出时间 while (1) if n等于0 //跳出循环 //输入数组下标i:E或S的标志ch:小时数h:分钟数m: if i等于0 //n自减 if k等于0 sum=0; else sum=sum与k的商 //输出…
一.PTA实验作业 题目1:7-2 求整数序列中出现次数最多的数 1. 本题PTA提交列表 2. 设计思路 Begin 输入整数个数N 定义数组a[N] 输入数组a for(i 0 to N-1){//进行N次判断 for(j 0 to N-1) if(a[i]和a[j]相等) count加一 i等于0//第一次判断 使max=count; n=i;//n放下标,max放次数 i不等于0且count大于max 使max=count; n=i;//重新赋值 count为0//每次循环count为0…
一.PTA实验作业 题目1:简化的插入排序 1. 本题PTA提交列表 2. 设计思路 (1)定义n,number,i,j,temp; (2)输入n; (3)定义数组a[n+1]; //把所有的数都放入数组中 (4)for(i=0;i<n;i++){ 输入number: a[i]=number; } (5)输入要插入的数(a[n]): 保留a[n]的值: (6)for(j=0;j<n;j++){ //找出temp的位置 if(temp<a[j]) 结束循环; } (7)for(i=n;i&…
一.PTA实验作业 题目1:7-4 简化的插入排序 1. 本题PTA提交列表 2. 设计思路 1.定义整形变量N,temp,i. 2.输入N 3.通过for(i=1;i<=N;i++)的循环语句来输入数组从小到大排好顺序好的数组a[i] 4.输入要插入的的数,用数组a[0]表示. 5.通过or(i=0;i 6.a[i]>a[i+1],temp=a[i+1];a[i+1]=a[i];a[i]=temp; 7.最后通过 for(i=0;i<=N;i++)的循环语句输出新的数组a[I] 3.代…
一.PTA实验作业 题目1:7-3 出生年 1. 本题PTA提交列表 2. 设计思路 1.声明一个函数different()用来计算一个年份的不同数字个数 2.定义y(y是来计算符合要求的年份的量),n(n为题目要求的不同数字个数),x(x用来存放起始年份),flag(flag是用来表示每个y值中的不同数字个数的量) 3.输入起始年份y和题目要求的n 4.x=y(存放起始年份) 5.do {flag计算y中不同数字个数:如果flag=n,符合题意,输出相应结果,并结束循环:如果不符合,y自增一}…
一.PTA实验作业 题目1:求整数序列中出现次数最多的数 1.本题PTA提交列表 2.设计思路 定义一个整型数组a[1001],i,j 为循环变量,N,定义数组b[1001]={0} 输入N for(i =0:i<N:i++) 用数组存放整数序列 输入a[i] for( i =0;i <N;i++) for(j =0;j <N;j++){ 如果(a[i]==a[j]) 判断每个整数出现的次数 并保存在数组b中 b[i]++: } 定义整型变量Max=0 for,(i =0;i<N;…
一.PTA实验作业 题目1:7-5 数组循环左移 1. 本题PTA提交列表 2. 设计思路 定义俩个整数 n,m 定义循环变量i,j,x 定义变量k用来存放下标 定义变量number用于交换数值 定义整型数组a[100] scanf("%d%d",&n,&m);输入m,n i=0 当i<n时循环输入整数,i递增,并j将整数赋给数组a x=1 x递增,只要满足x<=m{ k=0每次设置下标为0 j=n-1,j递减,只要满足j>0{ number=a[k]…
一.PTA实验作业 题目1:7-1 将数组中的数逆序存放 1. 本题PTA提交列表 2. 设计思路 定义三个整型变量n用来存放整数个数i,j是循环数 scanf("%d",&n) 定义一个整型数组a[10] 当i=0时执行循环 输入数组 i++ 让j=n-1 当j大于0时输出数组 每次j-- 当j等于0时去空格输出a[0] 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明 如图,本题遇到主要问题是数组最后一位数输出时没有去空格,通过printf语句调试解决. 题目…
一.PTA实验作业 题目1.求整数序列中出现次数最多的数 1.本题PTA提交列表 2.设计思路 定义整形变量n,max,count分别表示整数个数,出现次数最大值,出现次数.定义循环变量i,j. 输入n 定义数组a[n],b[n] for i=0 to i<n 输入a[i]; for i=0 to n-1计算各数出现个数 count=0; for j=0 to j<n 如果出现相同数,count加一 for i=1 to i<n 比较出最大数,赋值给max 输出出现次数最多的数和它出现的…
一.PTA实验作业 题目1:统计一行文本的单词个数 1. 本题PTA提交列表 2. 设计思路 Begin 定义字符型变量ch,pre=' ': 定义整型变量count://用来记录单词个数 count←0: while((ch←getchar())!='\n') do{ if(ch!=' ' and pre →' ') count 自增: pre←ch; } output count; End 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明. 本道题类似于11月循环结构上机考试的…
一.PTA实验作业 题目1:字符串转换成十进制整数 1. 本题PTA提交列表 2. 设计思路 (1)定义i为循环变量,number用于存放每一次转化的结果,flag用于判断是否为负数,p用于修改结果的正负: (2)定义字符型数组hexad,并输入字符串: (3)for( from i=0 to hexad[i]!='#' ) //遍历数组 if(hexad[i]为'-'且flag为零0) //说明还没有遇到第一个十六进制字符 则结果为负数: if(hexad[i]在'0'到'9'之间) //挑出…
一.PTA实验作业 题目1:统计一行文本的单词个数 1. 本题PTA提交列表 2. 设计思路 定义一个长度为1000的字符数组str[1000] 在定义 i=0,cnt=0:cnt用来记录单词的个数 while str[i]='\n'既输入回车时结束字符的输入 str[i]=0;设定结束的标志 for i=0 to str[i]='\0' if str[i]!=' '&&str[i+1]==' ';如果这个字符不为空格,并且下一个字符为空格. cnt++;让cnt+1; if str[i]…
一.PTA实验作业 题目1:7-2 统计一行文本的单词个数 1. 本题PTA提交列表 2. 设计思路 1.定义整形变量i=0,count=0,flag. 2.定义数组str[999] 3.输入str[i]=getchar())!='\n,i++数组 4.进入for(i=0;str[i]!='\0';i++)的循环. 5.判断输入的数组是否符合条件,若符合flag=1. 6.判断输入的数组是否符合条件并且str[i+1]=='\0',符合count++. 7.判断输入的数组是否str[i]==',…
一.PTA实验作业 题目1:7-1 字符串转换成十进制整数 1. 本题PTA提交列表 2. 设计思路 3.代码截图 4.本题调试过程碰到问题及PTA提交列表情况说明. 1.一开始我没想到怎么判断正负的问题,输出的结果只有正数,与样例不符合 2.第一次做的时候,我没有在a-f和A-F的字符转换后加10,使结果变小,参考了书上的转换后,我才发现漏了加10 题目2:7-16 Left-pad 1. 本题PTA提交列表 2. 设计思路 - 定义n(所要的长度),i,j(循环变量),m(数组长度),op(…