MasonChen的专栏

点点滴滴。积少成多。厚积薄发

[题目] Section2.1 HealthyHolsteins

[题意] 牛的成长需要V种维他命,每种维他命至少a[v]的量才能满足。现给出G种饲料,每种饲料含有b[G][V]的维他命的量。你的任务是算出至少需要哪几种饲料才能满足牛的成长。每种饲料只能用一次。输出饲料的数量及编号。 [思路] 枚举各种饲料的组合,每种组合都计算一下是否满足需求,如果满足,再判...

2014-09-01 20:21:16

阅读数:327

评论数:0

[题目] Section 2.1 The Castle(USACO)

[题目] Section2.1 The Castle [题意] 城堡由一个个的房间组成,有的房间之间存在墙,有的房间之间不存在墙。不存在墙的房间看作一个房间。给出这个城堡的地图,你的任务是算出房间数、最大的房间的大小、推倒一个墙之后最大的房间大小、要推倒的那面墙的位置。其中这个地图的表示方式有点...

2014-09-01 20:20:19

阅读数:437

评论数:0

[题目] Section 2.1 OrderedFractions(USACO)

[题意]给出一个整数N,找出一组真分数,使得他们的分子分母都不大于N.以分数形式从小到大输出这组数。 [思路]不要想如何排序了,set解决!枚举所有分数,先判断是否最简,然后加入set中即可。 [代码] #include #include #include #include #includ...

2014-09-01 20:19:02

阅读数:243

评论数:0

[题目] Section 1.2 Dual Palindromes

[题目] Section 1.2 Dual Palindromes [题意]如果一个整数N在2~10进制下至少有两次是回文数,那么N就叫做双重回文数。给出两个整数N和S,找出从N开始的前S个双重回文数并输出。 [思路]和上一个题基本一样。。 [代码] #include #includ...

2014-09-01 20:17:21

阅读数:319

评论数:0

[题目] Section 1.2 Milking Cows(USACO)

[题意]给出N组挤牛奶的开始时间和结束时间,求有人挤牛奶和没人挤牛的最长时长。 [思路]尝试了一种“记忆”的方法,避免了复杂的判断。思路是用数组a[]标记有人挤的时间点,b[]标记没人挤的时间点。也就是说这两个数组的01情况正好相反。如果当前已被标记那么a[i]+=a[i-1],b[i]+=b[...

2014-09-01 20:13:41

阅读数:278

评论数:0

[题目] Section 1.2 Palindromic Squares

[题意]给出一个整数B(2 [算法]进制转化 [思路]string容器对于进行进制转化提供了很大的方便。判断是否为回文数时,用reverse()函数倒转字符串后,如果与原来的字符串相等,就说明是回文串。祥见代码。 [代码]

2014-09-01 20:12:47

阅读数:265

评论数:0

USACO Hamming Codes

有的题只看题解,会干就这道怎么这么难啊,毫无头绪啊,但当自己

2014-07-31 10:40:33

阅读数:316

评论数:0

USACO Healthy Holsteins(二进制枚举子集)

题目大意:牛的成长需要V种维他命,

2014-07-31 09:33:02

阅读数:594

评论数:0

USACO 特殊的质数肋骨

深度优先搜索#include using namespace std; int n; void dfs(int x,int y); bool prime(int x); int main() { cin>>n; if(n==1) cout<<2<...

2014-03-24 00:15:26

阅读数:642

评论数:0

USACO Section1.4 n皇后问题

这个就属于深度搜索问题了,之前也做过一个深度搜索问题,感觉相同点就是在搜索函数中往往进行递归。关于n皇后问题课本上有一种解法,要适应这个题只需稍加修改。虽然我形式上明白了,但是对如何具体深搜的有的稀里糊涂的。。提交的时候最后一个数据点也就是13皇后问题超时,为1015ms,就超15ms,,,,百度...

2014-03-23 01:02:29

阅读数:359

评论数:0

USACO 修理牛棚

同样是一道贪心题,我的思路是用一个数组存下所有的空挡,对空挡进行排序,然后再在总长度中减去前m-1大的空档长度。 关键还是理解题意。。貌似洛谷oj不支持INT_MIN之类的。。还有要对初始数据排一次序,害我wa了一次。。。。 #include #include #include using na...

2014-03-23 01:00:36

阅读数:720

评论数:0

USACO Section1.3 混合牛奶

我对贪心的理解就是通过每一步的最优解找的整体的最优解。往往通过一个循环语句即o(n)的复杂度来解决问题,所以资料上总说贪心算法往往是所有算法中最快的。另外贪心往往用到排序,所以sort的用法要记牢,不管对数组还是结构体。。 具体到这个题就要先依据单价进行排序,这里就要求要把数据保存为结构体形式。...

2014-03-23 00:56:54

阅读数:475

评论数:0

USACO 回文质数

开始用暴力搜索写的,提交超时,上网看了一下别人的代码,有一种思想是先计#include #include using namespace std; int zhishu(int a)//这个函数用来判断质数 { int i; int end=sqrt((double)a); ...

2014-03-23 00:53:19

阅读数:554

评论数:0

USACO Section1.2破碎的项链

很明显使用模拟的方法进行搜索。但是一开始只是凭感觉写了出来,有些样例没有过,仔细想想才明白自己没有完全明白怎样模拟,下面是大体思路: 如果开始是一串连续的w,记录下它的数目,直到遇到一串或一个b或r,再把它们的数目加在一起,作为一次可能的结果。如果开始是一个或一串b或r记录下它的数目,直到遇到一...

2014-03-23 00:49:12

阅读数:1303

评论数:0

USACO 方块转换

这个题目考察了二维数组行列之间的相互转化以及水平翻转和镜像转化。 一开始我想把每个情况写成一个函数,然后再根据情况决定调用哪一个。 程序是写出来了,但是不知道为什么有几种情况总是输出7。。。。 然后又上网查了查,发现了更好的方法。 错误代码: #include using namespace st...

2014-03-23 00:01:33

阅读数:540

评论数:0

USACO 挤牛奶

首先题意很清晰,给出并列的几个时间段,找出最长有人挤奶时间时间段和最长无人机乃时间段。 把有人挤奶的时间标记为1,无人挤奶的时间标记为0,然后再枚举寻找。 代码: #include #include #include using namespace std; int Time[1000010...

2014-03-22 23:51:50

阅读数:484

评论数:0

USACO 黑色星期五

题目大意就是给出一个年份,求从1900年到这一年的每月13号落在一星期之中每天的次数。 注意要判断某年是闰年或者平年,因为这两种年份相同月的天数不一样的。 算出每个月13号距离初始日期的天数,然后再用求余运算确定星期几。 这个题主要用了枚举的思想。 #include using na...

2014-03-22 23:41:32

阅读数:580

评论数:0

USACO 贪婪的送礼者

首先要弄清楚题意,题目要求输出收到的比送出的钱多的数目。送出的也就是原来的-余下的,然后再用一个数组记录收到的,答案就是两者之差。 这里最好用一个结构体来保存名字、原有的钱数和收到的钱数。#include #include using namespace std; char str[15]; i...

2014-03-22 23:36:42

阅读数:881

评论数:0

USACO1200 你的飞碟在这儿

虽然只是一道练手题,但我确实很久没做字符串的题目了,还是稍微纠结了一小会。 分别先求出两个字符串所代表数字的累乘积,再判断两个积分对47求余是否相等,如果相等输出GO,否则输出STAY。 另外,求字符串长度除了调用strlen函数之外还可以用“名称.size()”的方式。 代码: #inc...

2014-03-22 23:32:23

阅读数:431

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭