摘要: 题意:计算机中有一些固定大小的内存,内存越大,处理速度越快。对于一个程序,加入不同的内存空间,处理所需时间不同。现给出m个内存空间,n个程序,对于每个程序程序,有k组数据(s,t),分别表示当程序 i 在某个内存环境s下对应的运行时间t。当有一个内存空间为si,一个程序的2组数据a,b,满足as最大内存空间)分析: 很复杂的题意,直观感觉就是所求的量很多,而且并非直接求最小值,是要具体的把方案求解出来。想到这里应该能确定用图论解决。进一步的,要用什么来处理,排除法也能想到匹配(其实我在刷图论专题= =)。 确定了算法,就明确了方向,一侧必然是n个程序。那么另一侧应该是什么呢?我们求的是平均.. 阅读全文
posted @ 2013-08-31 21:41 Thousand Sunny 阅读(665) 评论(0) 推荐(0) 编辑
摘要: 终于找到了T^Thttp://code.google.com/p/aoapc-book/ 阅读全文
posted @ 2013-08-31 19:13 Thousand Sunny 阅读(510) 评论(0) 推荐(0) 编辑
摘要: 事实再一次证明:本小菜在计算几何上就是个渣= =题意:平面上n个点(n 2 #include 3 #include 4 #include 5 #define rep(i,a,b) for(int i=a;i<=b;i++) 6 using namespace std; 7 8 const int MAXN=333; 9 const double eps=1e-10;10 11 struct Point{12 double x,y;13 Point(double _x=0,double _y=0):x(_x),y(_y){}14 }p[MAXN];15 16 typedef P... 阅读全文
posted @ 2013-08-31 17:38 Thousand Sunny 阅读(1029) 评论(0) 推荐(0) 编辑
摘要: 题意:固定起点是0,给出一个序列表示n个点,所有点都在一条直线上,其中每个元素代表了从起点到这个点所走的距离。已知路过某个点不算到达这个点,则从起点出发,到达所有点的方案有许多种。求所有方案走的总路程/方案数,输出分子、分母,要求不含约数。e.g:n=3 {2,3,5},{2,3,5}{2,5,3}{3,2,5}{3,5,2}{5,2,3}{5,3,2},总路程(5+7+7+8+9+8)=44,答案44/6=22/3,输出“22 3”。分析:1、以n=3序列{a1,a2,a3}为例,实际上是{0,a1,a2,a3},起点确定,总共有n!中方案。2、经过简单的思考就可以发现,每种方案的第一步比较 阅读全文
posted @ 2013-08-31 14:16 Thousand Sunny 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 题意:输入a,b,x,y,a,b分别是两人的步数(每a块砖,刷一次),则有一些砖被两人同时刷到了,问[x,y]区间内有多少块砖同时被两人刷到。分析:就是求[x,y]中有多少个能把a,b的最小公倍数lcm=a*b/gcd(a,b)整除的数字。求出[x,y]区间上出现的第一个和最后一个满足条件的数字 l,r ,那么答案就是(r-l)/lcm+1。 1 #include 2 #include 3 4 int gcd(int a,int b) 5 { 6 if (b == 0) return a; 7 return gcd(b,a%b); 8 } 9 10 int main()11 ... 阅读全文
posted @ 2013-08-31 11:55 Thousand Sunny 阅读(265) 评论(0) 推荐(0) 编辑