随笔分类 -  模拟

摘要:昨晚脑子发涨,代码写的跟坨屎的,到底没过,今天早晨来看了看,查了几个bug过了。。。纯模拟+LCA找最近公共祖先,需要注意的几个地方:1、出处顺序,可以用dfs输出,不过每个dfs里面要开一个vector<>,然后排序。2、b操作可能出现询问Mr.X,Mr.X的brother个数为13、c操作时LCA不能是他两个本身。可以开一个pre,如果是他俩中的一个,再往前找一个就可以了。200+行的渣代码:View Code 1 //#pragma comment(linker,"/STACK:327680000,327680000") 2 #include <io 阅读全文
posted @ 2012-09-26 08:29 AC_Von 阅读(376) 评论(0) 推荐(0) 编辑
摘要:A,B两个序列,每个元素表示一个长方形,问A中的长方形最做能覆盖多少个B中的长方形。(覆盖= (Ha >= Hb && Wa >= Wb))把A,B放到一个集合里,A的元素标记为1,B的元素标记为0,然后按h从大到小排序,h相等按w从大到小排序,h w都相等则A优先在前面。然后遍历整个序列。将A元素的w值放到set里面,碰到B元素的w值则在set里找第一个 >= wB的数,将这个数从set里删掉,结果累加1。。。ps: 关键字 multiset lower_bound 阅读全文
posted @ 2012-09-13 16:07 AC_Von 阅读(177) 评论(0) 推荐(0) 编辑
摘要:比赛的时候用treap写,挂成傻逼了!赛后据说set可以过。。。然后开始了我的挂弱b血泪史!TMD!!今天又敲了一遍,发现错在一个很很很2的地方!!!!View Code #include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <cstring>#include <algorithm>#include <string>#include <set>#include <ctime>#inclu 阅读全文
posted @ 2012-07-20 10:24 AC_Von 阅读(313) 评论(0) 推荐(0) 编辑
摘要:妹的!java些高精度相当与玩cs开外挂!电脑装上java很久了,一直只会写写a + b 玩,今天心血来潮找个高精度来玩玩。^ ^import java.io.*;import java.util.*;import java.math.*;public class Main { public static void main(String [] args) throws IOException { Scanner cin = new Scanner (new BufferedInputStream(System.in)); //建立缓冲区输入流 Big... 阅读全文
posted @ 2012-05-01 20:15 AC_Von 阅读(230) 评论(0) 推荐(0) 编辑
摘要:基本算法C++的标准模版库的应用poj3096,poj3007较为复杂的模拟题的训练poj3393,poj1472,poj1027,poj3371,poj2706POJ 3096水题,map,set随便搞POJ 1472TLE了一下午,PE了一晚上。。。我滴神啊!算时间复杂度,用堆模拟。。。参考的代码。。。T_TView Code #include <iostream>#include <cstring>#include <cstdio>#include <cstdlib>#include <string>using namespac 阅读全文
posted @ 2012-04-11 15:52 AC_Von 阅读(372) 评论(0) 推荐(0) 编辑
摘要:物理题,我把公式推错了。。。 两个限制条件,1、能爬上最高坡。2、Sweet Potato在每一个有Bitter Potatoes位置的速度大于等于Bitter 的速度。设要求的初速度为pv1、pv = sqrt(2*g*(maxh - h0));2、pv = tpv = sqrt(vi*vi + 2*g*hi); 为bitter potato纵坐标。View Code #include <iostream>#include <cstring>#include <cstdio>#include <cmath>using namespace std 阅读全文
posted @ 2012-04-05 17:15 AC_Von 阅读(263) 评论(0) 推荐(0) 编辑
摘要:我用的高精度加法模拟的,不过看到好多人0MS过了,肯定有更好的方法。AC代码先放这,回头再想。。。(据统计F(1000)是208位,开数组时注意。。。。)#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int N = 1007;int f[N][217];int main(){ int i, j; f[1][0] = f[2][0] = 1; for(i = 3; i < N; i++) { for(j = 0; j <= 210; j 阅读全文
posted @ 2011-08-17 21:07 AC_Von 阅读(265) 评论(0) 推荐(0) 编辑
摘要:在说这题之前请容我先说几句:1047!你妹是multiple test cases!你全家都是multiple test cases!!!丫,高精度没啥说的,光格式WA了两次!这不是浪费时间吗!#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int MAX = 107;int sum[MAX];char ss[MAX];int main(){ //freopen("data.in", "r", stdin); 阅读全文
posted @ 2011-08-17 19:58 AC_Von 阅读(199) 评论(0) 推荐(0) 编辑
摘要:这道题目的长度很吓人,其实就是一道很裸的Hufuman编码问题,一般的《数据结构》书上都有,不说了,上代码:#include <stdio.h>#include <string.h>#define N 128#define inf 0x7fffffffstruct node{ int val; //权值int left, right, parent;}p[1000];int f[N]; //存放每个字母权值int len[N]; //统计编码的长度void hufuman(int n){ int i, min1, min2, pos1, pos2, flag... 阅读全文
posted @ 2011-08-08 09:55 AC_Von 阅读(261) 评论(0) 推荐(0) 编辑
摘要:大明A+BTime Limit: 3000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3081Accepted Submission(s): 947Problem Description话说,经过了漫长的一个多月,小明已经成长了许多,所以他改了一个名字叫“大明”。这时他已经不是那个只会做100以内加法的那个“小明”了,现在他甚至会任意长度的正小数的加法。现在,给你两个正的小数A和B,你的任务是代表大明计算出A+B的值。Input本题目包含多组测试数据,请处理到文件结束。每 阅读全文
posted @ 2011-07-29 08:01 AC_Von 阅读(276) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示