自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (2)
  • 收藏
  • 关注

原创 AC自动机总结

AC自动机总结0.引言:      由于大连现场赛的一道 AC自动机+ DP的题目(zoj3545 Rescue the Rabbit)被小媛同学推荐看 AC自动机。经过一段时间的努力,终于把 shǎ崽神牛的 AC自动机专辑题目 AK(其实还差那个高中题。。囧。。不让做)。      特别感谢:shǎ崽神牛,并附以链接:      http://www.notonlys

2014-03-30 02:18:19 26894 12

原创 UVa 10905 - Children's Game

题目:给你一些数字,让你将他们组成一个最大的数字。分析:简单题。直接按字符串排序即可。前缀大于整串。#include #include #include #include #include using namespace std;string number[51];int cmp( string a, string b ){ return a+b > b+a;}

2014-03-31 02:47:02 1273

原创 UVa 10579 - Fibonacci Numbers

题目:计算Fib数列的第k个数。分析:模拟,大整数运算。大整数加法,直接模拟即可,因为不超过1000位,所以算到Fib(5000)                                    1000 #include #include #include #include using namespace std;int F[5005][2000];int m

2014-03-28 12:30:01 1689

原创 APOC-UVA-0001 题解

PA(UVa709)     :区间dp。状态转移方程:F(i,j)= min(F(i,k-1)+min_line(k,j)),                                                      i                                                     其中,min_line(k,j)是以k开始,j结

2014-03-27 23:20:22 823

原创 UVa 243 - Theseus and the Minotaur (II)

题目:忒修斯和牛头人,这是个很有名的古希腊神话故事。题目的描述也不是一般的长啊。            估计很多人是被英文吓跑了,╮(╯▽╰)╭为了干掉他,看了3天的题目。            题目大概的意思:这有一个迷宫,由山洞和隧道组成,T(忒修斯)和M(牛头人)开始时            处于迷宫的隧道中,然后向前走。T的运动规则是,进入到一个洞穴后,就靠着右侧的强走, 

2014-03-27 22:43:08 1590

原创 UVa 10954 - Add All

题目:将一些数字加和,每次加和的代价是两数之和,求合并所有数的最小代价。分析:贪心。哈夫曼树,因为合并时总的计算次数是一定的,所以小的数字计算多次,            即为总代价最小,所以每次计算最小的两个数字之和即可。#include #include #include #include #include using namespace std;//banery_

2014-03-27 04:04:48 613

原创 UVa 858 - Berry Picking

题目:给你一个平面的多边形,再给你一条平行于y轴的直线,问直线被多边形截取的总长是否超过目标。分析:计算几何。            方法一:1.求出所有直线和多边形交点。(O(N))                            2.对交点按纵坐标排序,则排序后这些点一定相邻。(O(NlgN))                            3.判断每对相邻点间的

2014-03-26 16:02:43 1256

原创 UVa 11968 - In The Airport

题目:在机场买东西,有饮料和蛋糕,问最接近所有物品平均价格的饮料和蛋糕的价钱。分析:简单题。直接平均值,比较即可,防止精度误差,都乘以物品总数。注意:要用long long类型,防止数据溢出。#include #include #include using namespace std;int m[1001];int k[1001];int n[1001];long

2014-03-26 15:24:38 741

原创 UVa 11935 - Through the Desert

题目:你有一辆车,有一串车的运动序列,问车最少的油箱是多大,才能完成这个指令序列。            Fuel consumption n:n/100 km 耗油            Leak:漏洞增加一个,每个洞 1/1 km 耗油            Gas station:加满油            Mechanic:修好所有的漏洞            Goa

2014-03-26 15:19:39 1180

原创 UVa 709 - Formatting Text

题目:给你一段文字,让你对文字排版,每行的最大长度有限制L,有一个对于排版格式的权值公式:                 P = sum((单词间空格-1)*(单词间空格-1))            求出P最小的一种排版,F相同时输出前面的空格最少的。分析:DP。看见题目第一想到的就是利用dp,设F(i,j)是从第i个单词开始排版,到第j个单词结束的最小P

2014-03-26 14:59:16 1849

原创 APOC-UVA virtual judge 开启

我和LG童鞋商量了一下,为了起到锻炼思维的目的,以后采用从UVa中随机题目刷题的方式。在virtual judge上开启 APOC-UVA比赛,每次以3天左右为一个周期,在UVa上随机5道题目。比赛模式设置为public,有意者可以过来参加( ⊙ o ⊙ )啊!

2014-03-26 14:38:47 1464

原创 UVa 10130 - SuperSale

题目:有一个超市大甩卖,但是每个人同样的商品只能拿一件,商品有价值和重量,现在有一个顾客序列,            每个人能拿的最大重量已知,求这些顾客,能拿到的最大价值的物品和。分析:dp,01背包。看题目显然是01背包,每个物品只能取一种,每个顾客其实是一个单独的01背包过程,求和即可。注意:dp的初始化,和数据的清空。#include #include #include

2014-03-24 14:33:15 1065

原创 UVa 489 - Hangman Judge

题目:猜单词游戏,如果猜的字母是答案中的就会显示,否则就算猜错,同一字母猜错,不增加错误次数,猜错不能达到7次。分析:模拟。按照题目要求模拟即可。设置一个状态函数state()可简化操作,            如果对应字母存在则返回1,不存在返回0,如果存在并被猜出来返回-1,不存在被猜错返回-2。#include #include #include using namesp

2014-03-24 14:16:37 1243

原创 UVa 11530 - SMS Typing

题目:给你手机键盘,问你打出一句话需要按键次数,例如b是按2次,c是3次。分析:模拟。打表记录每个按键次数下的字母,在用它反打表计算,每个字母的按键次数。#include #include #include using namespace std;string str;char mapc[5][10] = {""," adgjmptw","behknqux","cfilor

2014-03-24 13:42:47 964

原创 UVa 694 - The Collatz Sequence

题目:还是经典的3n+1问题,这次给了一个计算过程中间值的上界,超过直接停止。分析:模拟。直接模拟即可。注意:中间计算用long long防止溢出。#include #include #include using namespace std;int X( long long n, long long l ){ if ( n == 1LL ) return 3; int

2014-03-24 13:04:15 1201

原创 UVa 371 - Ackermann Functions

题目:3n+1经典问题,求区间中最大运算次数。分析:直接在区间中计算,取最值即可。注意:1.区间的端点可能是反的;2.计算过程中用long long防止溢出。#include #include #include using namespace std;int X( long long n ){ if ( n == 1LL ) return 3; int count =

2014-03-24 13:01:13 1687

原创 UVa 499 - What's The Frequency, Kenneth?

题目:统计每行出现的次数最多的字母,按ASC顺序输出。分析:简单题。利用奇数排序统计即可。#include #include #include using namespace std;string str;int Count[128];int main(){ while ( getline( cin, str ) ) { for ( int i = 0 ; i

2014-03-24 11:08:04 929

原创 UVa 264 - Count on Cantor

题目:求分数序列 1/1 1/2 2/1 3/1 2/2 1/3 ...的第N个数。分析:简单题。打表计算出10000000以内的所有结果,查询输出。            打表利用模拟方法计算,设置一个方向变量flag,则满足如下地推关系:            设 F(i-1) = n/m,则 F(i) = n/(m+1)    flag = -flag  { n == 1 , f

2014-03-24 10:53:57 1395

原创 近期安排

近期应该忙于准备材料、成绩单和证明。语言学习的报名也要抓紧了。除了准备考核的专业课外,还准备重新看看微积分,基本忘光了o(╯□╰)o读书计划:knuth、计算几何导论、深入了解计算机系统、心理学与生活、一本计算机语言的综合书。前两本看着略纠结( ⊙ o ⊙ )啊!加油↖(^ω^)↗。决定将以前在百度空间的文章转移过来(以dp和字符串处理为主)复习以前学过的算法和DS。

2014-03-24 02:55:11 1044 2

原创 hash表模板

/* 自己的hash函数模板 zoj3013 hash映射: T = 200 zoj3013 字典树: T = 80*/#include #include #include #define min( a, b ) ((a)<(b)?(a):(b))/* Hash define */#define words

2014-03-24 02:42:08 1089

原创 字典树模板

/* 自己写的字典树模板 zoj1109:140ms 有待改进 */#include #include #include /* Trie define */#define nodesize 200010#define wordsize 100010#define lettsize 11typedef struct node{ char* word;

2014-03-24 02:40:35 1035

原创 一元三次方程的分治解法

/* 2011-09-21 f(x)=ax^3+bx^2+cx+d 分析:设三个根为 x0,x1,x2 有 f(x)=a(x-x0)(x-x1)(x-x2)有(韦达定理) -b = a(x0+x1+x2) c = a(x0x1+x1x2+x2x3) -d = ax0x1x2

2014-03-24 02:25:00 3281

原创 求解一元方程公式法

最近决定将以前在百度空间的文章转移过来(以dp和字符串处理为主)/* 只有1,2,3,4次方程有求跟公式 */#include #define OO 10class equation { private: double A,B,C,D,E; public: double X[ 5 ]; int Count

2014-03-24 02:21:46 1009

原创 UVa 10699 - Count the factors

题目:计算一个数的素数因子个数。分析:数论。直接打表计算1000000内的素数,然后枚举取余判断即可。#include #include #include using namespace std;int visit[1000001];int prime[700001];int main(){ memset( visit, 0, sizeof(visit) ); in

2014-03-24 02:11:12 1025

原创 UVa 10307 - Killing Aliens in Borg Maze

题目:在一个迷宫中,以S为起点,遇到A时可以分叉,问走到所有的A的路径和最小代价。分析:图论,最短路,最小生成树。利用bfs求出所有的A和A以及A和S间的最短路,            再在这个最短路生成的途中计算最小生成树即可。注意:最多101个点,世界上最遥远的距离就是因为数组少开了1个而无限的WA( ⊙ o ⊙ )!#include #include #include

2014-03-24 01:38:15 1462

原创 UVa 10034 - Freckles

题目:给你平面上的n个点,求把他们连在一起的最小代价。分析:图论,最小生成树。直接计算出所有点之间的距离,然后计算最小生成树即可。注意:每组数据之间有空行。#include #include #include #include #include using namespace std;typedef struct d_node{ int point1; in

2014-03-24 00:43:16 588

原创 UVa 10168 - Summation of Four Primes

题目:判断给定的数字能否写成4个素数的和。分析:数论。1.如果N = 8 时,如果N为奇数则令N = 2 + 3 + K,            N为偶数则令N = 2 + 2 + K这样K为偶数且K>=4,这时满足哥德巴赫猜想:            一个偶数可以拆成2个素数和的形式。通过循环拆解K即可。            素数判定可以利用筛法打表,或者直接按照随机判定算法判

2014-03-23 18:31:04 1093

原创 UVa 11631 - Dark roads

题目:求一个图中,形成最小生成树后剩下的边长的总和,即利用补图求kruskal求SMT删掉的边的长度和。分析:图论,最小生成树。#include #include #include #include #include #include using namespace std;typedef struct d_node{ int point1; int point2;

2014-03-22 20:24:54 789

原创 UVa 11747 - Heavy Cycle Edges

题目:计算最小生成树的kruskal算法,有两种途径,方法一是我们常用的不断的把边加到目标集合上。            方法二是从图中不断的删边,最后剩下的就是所求集合。分析:最小生成树。利用kruskal算法的方法一,求剩下的边就是删掉的边,即为所求。注意:数组别开小了,特别是并查集的。#include #include #include #include #inclu

2014-03-22 19:51:11 893

原创 UVa 10600 - ACM Contest and Blackout

题目:计算一个图的最小生成树和次小生成树。分析:图论,最小生成树。冤家题(⊙_⊙),2011年北京赛区现场赛A题类似物。            当时在赛场上想到了kruskal+bfs的加边删边算法。由于写错了一行代码最后悲剧了。            利用kruskal算法先计算出最小生成树,然后设置maxe[i][j]数组,            记录i到j在最小生成树上的路径

2014-03-22 15:34:15 1879

原创 UVa 10397 - Connect the Campus

题目:给你一些建筑,以及他们之间的一些电缆,问把他们都连起来还需要多少电缆。分析:最小生成树。将已有的电缆长度定义为0,直接进行最小生成树算法即可。#include #include #include #include #include #include using namespace std;typedef struct p_node{ int x,y;}pnod

2014-03-22 01:44:25 819

原创 UVa 10009 - All Roads Lead Where?

题目:给你一些地名,以及他们的相连关系,求两点间的最短路径,输出路径。分析:最短路。根据题意给出的图形应该是一棵树,直接利用bfs求解即可,不需要设置标记数组。            利用hash表,建立地名和地点id的一一映射,利用邻接表建图,最后运行bfs即可。注意:输出格式,每组之间有一个换行。#include #include #include #include

2014-03-21 20:30:06 1744

原创 UVa 10099 - The Tourist Guide

题目:有一个导游,要带领团队从当前点,走到目标点,但是每条路一次性通过的人有数量限制,            所以需要分批次进行。问最少需要分多少次进行。分析:贪心,最短路或最小生成树。图上贪心性质的扩散问题,可以作为最短路或者最小生成树求解。            问题的贪心特性成立很容易证明。            设集合A为当前计算的结果,则对于p∈A且q不在A中,如果点q加

2014-03-21 18:18:33 1451

原创 UVa 11624 - Fire!

题目:一个平面迷宫中有一个人,迷宫中有些点起火了,火和人每个单位时间只能向相邻的格子移动,            其中有一些空间被墙壁占据,问这个人在不背或烧到的情况下,离开迷宫的最快时间。分析:搜索。迷宫中的最短路,首先就会想到bfs;并且bfs利用队列会使状态空间按时间顺序分层。            而火的扩散过程正好符合这个时间的层次。所以我们会想到,利用两个队列,一个储存人的

2014-03-19 14:58:55 4594 3

原创 UVa 11101 - Mall Mania

题目:给你平面上的两个图形的有序点集表示,求两图形的哈密顿距离(|x|+|y|)。分析:搜索、最短路。利用bfs求解即可,可利用缩小边界优化效率,dbfs或者A*可能效率更高。注意:数据范围是0-2000,2001个点,小心RE。#include #include #include #include #include using namespace std;typede

2014-03-19 12:32:01 1174

原创 UVa 10653 - Bombs! NO they are Mines!!

题目:给你一个R*C的平面图,一个机器人在上面走,上面有一些坑,找到要求的最短路径。分析:搜索,最短路。直接利用bfs求解即可。#include #include #include #include #include using namespace std;int maps[1005][1005];int smap[1005][1005];int d[4][2] = {

2014-03-18 22:51:52 1024

原创 UVa 558 - Wormholes

题目:给你空间中的一些虫洞,可以在时间点跳跃,问是否存在负权回路。分析:最短路。判断图中是否有福泉回路,利用bellman-ford或者spfa,如果更新次数超过点的上限,既有。注意:有向图。#include #include #include #include using namespace std;int visit[1005];int dist[1005];in

2014-03-18 16:38:39 618

原创 UVa 10013 - Super long sums

题目:大整数加法。分析:简单题、模拟。利用数组计算即可。#include #include #include #include using namespace std;int A[1000005];int B[1000005];int main(){ int n,m,l; while ( scanf("%d",&n) != EOF ) while ( n --

2014-03-18 02:09:11 1087

原创 UVa 10098 - Generating Fast

题目:重集全排列,195类似物。分析:搜索。dfs+去重处理;去重:用当前前缀和上一个已知串匹配,相同即return(后面的结果一定和前面相同)。#include #include #include #include #include using namespace std;char data[11];char save[3628800][11];char temp[1

2014-03-18 01:28:53 690 3

原创 UVa 10000 - Longest Paths

题目:给出一个图和图上的边(边长为1),求最长路径,图中无回路。分析:最短路、图论。方案1,拓扑排序求关键路径;            方案2:边长取-1则变成无负权回路状态下的最短路问题。利用spfa(bellman-ford)求最短路。#include #include #include #include using namespace std;int maps[10

2014-03-18 00:30:30 2296

SOFA: A Multi-Model Framework for Interactive Physical Simulation

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

2018-06-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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