
ad hoc
会飞的蟋蟀
学习中!!
展开
-
USACO 1.3.1 Milking Cows
USACO 1.3.1 Milking Cows解析看来是个测试用例很弱的题,可以直接用数组表示时间段,然后遍历计算最长时间即可。 luogu的题解中差分的方法,但是我还不知道什么是差分orz 官方的题解是用stuct 表示一个时间段,存入数组,然后按起始时间sort,再遍历处理这个结构数组 还是很巧妙的。代码个人的暴力解法/* PROG:milk2 ID:imk...原创 2018-03-25 11:32:42 · 186 阅读 · 0 评论 -
USACO 1.3.2 Transformations 方块旋转
分析朴素的思想就是模拟翻转矩阵,官方的题解也是这样的。 但是如果数据量大的话,这种方法有点浪费。luogu上有个比较好的想法–剪枝 即在做变形的时候同时做判断,如果和当前char与目标矩阵不同就直接跳过,可以节省时间。代码只写的来暴力模拟orz/* PROG:transformID:imking022LANG:C++*/ #include <iostr...原创 2018-03-25 15:38:08 · 171 阅读 · 0 评论 -
USACO 1.3.3 Name That Number 命名那个数字
解析给定数字,翻译出对应的名字,在有限的名字字典中寻找最终可用正确的名字。 这道题有多种方法,我这里介绍三种: 1. 这是我自己想出来的方法,可是TLE。想法很简单就是,翻译出所有对应的名字,然后依次考察改名字是否在字典中。 我把dict.txt处理成了map,这样在查询的时候就比较方便了。但是显然数字越长,可能情况越多。 2. luogu上看来的,直接把dict.txt处理成数字,然...原创 2018-03-26 22:02:44 · 426 阅读 · 0 评论 -
USACO 1.3.4 Palindromic Squares
解析这题就比较简单了,进制转化加回文检测,就OK了。代码/* PROG:palsquareID:imking022LANG:C++*/ #include <iostream>#include <cstdio>#include <cstring>#include <string>#include <cstdlib...原创 2018-03-27 20:37:43 · 116 阅读 · 0 评论 -
USACO 1.5.2 Mother's Milk 母亲的牛奶
题解直观的想法是枚举出所有可行三元数组,那么用dfs深度遍历就可以了。 但是要注意怎样去重,这里用一个visit[][]二维数组表示AB两桶的奶量 (因为总量一定所以二维就够了)是否出现过。 当然还有很多方法,比如可以当成奥数题算出来…代码/*PROG:milk3ID:imking022LANG:C++ */#include <iostream>#in...原创 2018-04-23 19:31:37 · 238 阅读 · 0 评论 -
USACO 1.6.2 Prime Palindromes
题解这道题有点意思,原题给了提示的,没看前我是先算质数再做回文判断, 看了提示豁然开朗,先列回文数可以减少质素判断,明显是更明智的做法。 这题思路很清晰的,难点在如何不重不漏构造回文数,详见代码。代码/*PROG:pprimeID:imking022LANG:C++ */#include &amp;lt;iostream&amp;gt;#include &amp;lt;cstdio&amp;gt;...原创 2018-05-12 17:40:49 · 175 阅读 · 0 评论 -
USACO 2.2.1 序言页码 Preface Numbering
题解这道有点意思,本来很快写完的,被一个bug弄得怀疑人生了(结果发现是自己不仔细…)。 我的方法是 将数字转译成罗马数字,在这过程中做记录就好了。 肯定有纯数学的方法,直接递推出来,大家可以尝试一下。 大概的翻译算法为: 设给定待翻译数字为 n 1. 求出 n 最临近的区间 , 即n属于[sma, big ) // sma,big 显然是罗马数字中的基本数,要特殊处理相等情况 2...原创 2018-08-07 12:14:27 · 287 阅读 · 0 评论 -
LeetCode 621. Task Scheduler
题解比较有意思的题,不太好归类,应该是贪心。这题的只要换个思路就好做了,就是算idle的时间有多长,因为task必然耗时。给一篇写得很完备的英文解析简介几个核心点:有最大频率的任务,会创造最长的时间间隔如 A _ _ A _ _ A (n=2)这些间隔 _ 可用来放置其他任务,或者留作idle如果间隔不够,那么恭喜你我们不需要idle(思考为什么)特例 有相同最大频率的不同任务。...原创 2018-09-27 18:19:13 · 168 阅读 · 0 评论 -
LeetCode 48. Rotate Image
题解这题只要有点分解的意识就好了。旋转矩阵其实就是在按照顺时针顺序依次swap一行/列,如下图。每完成一个 口字再往内部走就是个更小的 口字。 4 - - - |3 | | 1 | | | - - - ...原创 2018-09-28 11:54:19 · 100 阅读 · 0 评论