USACO Chapter 1 解题总结

1.1.1 Your Ride Is Here

基本字符串操作,无压力。

1.1.2 Greedy Gift Givers

基础模拟题,弄明白题意,不怕麻烦,就OK了。

1.1.3 Friday the Thirteenth

自己的做法:三维数组代表年月日,400的数据范围不大,模拟走一下时间的流逝过程即可。时间复杂度O(N*12*31),多好玩。

官方标程好像用到了一个神奇的公式,好像是什么蔡勒公式。

1.1.4 Broken Necklace

2*N的拆环,枚举断点找即可。在找的过程中先要解决那个万能的颜色珠子,如果起点是那个珠子,先累加答案,之后到头之后,再按规则找。

1.2.1 Milking Cows

问题模型:找被覆盖的最长区间,和没有覆盖的最小区间长度。自己用了一个基于扫描线的思想,遇到起点入栈,终点出栈,每遇到一个点就计算一下当前长度。注意细节即可。

1.2.2 Transformations

非常恶心的模拟题,让人想吐。不多说。

1.2.3 Name That Number

双文件读入注意一下,解决了这个问题然后正常模拟就可以。

1.2.4 Palindromic Squares

进制转换基础 + 判断回文数。

1.2.5 Dual Palindromes

进制转换。可以开一个这样的数组 base[]={“0123456789ABCDEFG”};

1.3.1 Mixing Milk

刚学不到2个月奥赛时候做的题,按照生活思路去贪心,注意贪心的题,一般开始都要先排个序。

1.3.2 Barn Repair

区间动态规划,同 “乘积最大”。注意细节即可。

1.3.3 Prime Cryptarithm

牛式,暴力枚举。注意数位就可以。

1.3.4 Combination Lock

正常循环加判断就行,话说自己一开始错是因为没有注意到这东西是个环,是位置差2,不是数值差2。

1.3.5 Wormholes

第一章的Boss,话说出来的有点早。搜索 + 剪枝 + 模拟,解题报告已经写了。

1.3.6 Ski Course Design

暴力枚举每个答案做就行。一开始想复杂了。

1.4.1 Arithmetic Progressions

话说这题倒是让自己语文觉得不好了,读了N多遍题才明白。

类比于搜索,要学习的还是剪枝的技巧,当我写完解题报告之后才发现自己有多么愚蠢。记住一个:你要找的等差数列的第一个数一定是这个双平方数集合中的某个BABY。然后枚举公差就可以。注意剪枝。

1.4.2 Mother’s Milk

BFS 搜索每一步的每种倒法,一定要注意不合法的倒法是不能够入队的,至于为什么,嘿嘿,自己试过就知道了。

1.5.1 Number Triangles

动态规划第一题,谁都是从这题开始DP的,放这里主要是让你学习一下滚动数组。

1.5.2 Prime Palindromes

回文质数,它给的两个性质很好,只有奇数可能是质数(2除外),先找回文数再找质数。如果是暴力的做法,你打个表,如果是正解,你就写个生成不同位数回文数的东西,然后判断素数就可以。话说我是打的表。

1.5.3 SuperPrime Rib

DFS,自己还傻傻的想枚举每个素数呢。不过这个题和上个题倒是让我复习了一下筛法。记住一个性质,如果是肋骨数,那么第一位一定是 2、3、5、7,最后一位一定是1、3、7、9。信不信由你。反正我信了。

USACO Chapter 1 解题总结的更多相关文章

  1. USACO CHAPTER 1 1.1 Ride 水题

    水题,主要是学习文件输入输出. /* ID: ijustwa1 LANG: C++ TASK: ride */ #include<cstdio> #include<cstring&g ...

  2. usaco 2010年3月银组题解

    usaco银组解题报告 一.石子游戏如果把‘O’当作0,‘X’当做1,则N个洞的每一种状态都可以看做是一个N位二进制数.于是,这个问题就变成了求环绕的N位格雷码.幸运的是,这个结构很容易就能够用一个简 ...

  3. BNUOJ 2105 Distance Queries

    Distance Queries Time Limit: 2000ms Memory Limit: 30000KB This problem will be judged on PKU. Origin ...

  4. USACO Section 1.3 Prime Cryptarithm 解题报告

    题目 题目描述 牛式的定义,我们首先需要看下面这个算式结构: * * * x * * ------- * * * <-- partial product 1 * * * <-- parti ...

  5. USACO Section 1.1 Your Ride Is Here 解题报告

    题目 问题描述 将字符串转变为数字,字母A对应的值为1,依次对应,字母Z对应的值为26.现在有一个字符串,将其中的每个字符转变为数字之后进行累乘,最终的结果对47求余数. 题目给你两个字符串,其中的字 ...

  6. USACO Section2.2 Preface Numbering 解题报告 【icedream61】

    preface解题报告----------------------------------------------------------------------------------------- ...

  7. USACO Section2.1 Hamming Codes 解题报告 【icedream61】

    hamming解题报告----------------------------------------------------------------------------------------- ...

  8. USACO Section2.1 Healthy Holsteins 解题报告 【icedream61】

    holstein解题报告 --------------------------------------------------------------------------------------- ...

  9. USACO Section2.1 The Castle 解题报告

    castle解题报告 —— icedream61 博客园(转载请注明出处)--------------------------------------------------------------- ...

随机推荐

  1. C++程序设计实践指导1.14字符串交叉插入改写要求实现

    改写要求:1:以指针为数据结构开辟存储空间 改写要求2:被插入字符串和插入字符串不等长,设计程序间隔插入 如被插入字符串长度为12,待插入字符串长度为5 则插入间隔为2 改写要求3:添加函数Inser ...

  2. 关于char/varchar(n)中n的探究:字符数or字节数

    [问题来源]将设计的数据库表展示的时候,yu哥问我,你的那个top_info字段定义的类型是varchar(100),为什么是100呢,这100的长度能存多少个中文? 当时的想法就是,这个100能存多 ...

  3. java普通类如何得到spring中的bean类

    在SSH集成的前提下.某些情况我们需要在Action以外的类中来获得Spring所管理的Service对象. 之前我在网上找了好几好久都没有找到合适的方法.例如: ApplicationContext ...

  4. 微信订阅号开发之token验证后,自动回复消息功能做好,发送消息没有返回

    相信很多人会跟我一样,token验证之后,发送消息给订阅号,没有消息返回. 以下,说一下我辛苦调试得到的解决办法: 首先,token验证: 自己写的token一直验证失败,找了好久,没有发现bug.实 ...

  5. npm install Error:EPROTO: protocol error, symlink '../mime/cli.js' -> '/vagrant/src/nodejs/node_modules/express/node_modules/send/node_modules/.bin/mime'

    我在ubuntu上使用npm安装依赖是出现下面错误: npm ERR! Linux 3.13.0-101-genericnpm ERR! argv "/usr/bin/nodejs" ...

  6. 利用cookies获取登录后的网页

    众所周知,HTTP连接是无状态的,那么问题来了,怎么记录用户的登录信息呢?通常的做法是用户第一次发送HTTP请求时,在HTTP Server端生成一个SessionID,SessionID会对应每个会 ...

  7. 序列化类型为“System.Reflection.Module”的对象时检测到循环引用

    在使用ajax调用web services时,正好返回的类型为datatable,想用通过json方式直接解析,但调用后,得到如下错误: 序列化类型为“System.Reflection.Module ...

  8. 8051、ARM和DSP指令周期的测试与分析

    在实时嵌入式控制系统中,指令周期对系统的性能有至关重要的影响.介绍几种最常用的微控制器的工作机制,采用一段循环语句对这几种微控制器的指令周期进行测试,并进行分析比较.分析结论对系统控制器的选择有一定的 ...

  9. 从QWidget继承的圆形进度条QRoundProgressBar,只有370行代码(别忘了有现成的QProgressDialog)

    是学习绘制控件的绝佳例子: http://blog.csdn.net/liang19890820/article/details/51957568 https://sourceforge.net/pr ...

  10. javascript之对象

    一.创建对象 1.对象直接量. var point = { x:0,y:0 }; //point就是一个对象,跟C#不同,它不需要一定有类才能创建对象. 2.通过new创建对象 var d = new ...