E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
sicily
sicily
1415. Honeycomb Walk【动态规划】
开始看到这道题知道要用dp,但这个六边形的确很恶心,每次坐标的偏移量无法用二维数组完整表现出来,后经过看多方题解,明白了可以取八个方向中的六个,解决了构图的问题,至于状态转移是很明显的。dp[s][i][j]表示经过s步到达坐标为[i][j]的位置的路径数: 则dp[s][i][j] = dp[s-1][i-1][j-1]+dp[s-1][i][j-1]+dp[s-1][i+1][j]+
·
2015-11-12 17:12
动态规划
sicily
1083 Network【最小生成树】
最小生成树的水题,直接上代码了。 View Code // source code of submission 689439, Zhongshan University Online Judge System #include < iostream > #include <
·
2015-11-12 17:10
NetWork
sicily
11192. Guardian of Decency(二分匹配)
题意是老师要带学生出游,但有怕学生会成为一对。给出学生们不会成为一对的条件:1身高相差超过402性别相同3音乐风格不一样4最喜欢的运动一样然后给出每个学生的资料,问能带多少学生出去,使得这些学生不会成为一对。构图时先求出会成为一对的对数ans,然后总数n-ans/2就是答案。#include <iostream>#include <cstring>#include <
·
2015-11-12 17:09
DI
sicily
1303 Job Assigment(二分图最大权匹配)
View Code 工作人员集合M和工作N是二分图的两个部分,工作人员i对工作j的满意度k作为边 < i,j > 的权值,要求一个令所有工作人员 满意度最大的匹配就是求这个二分图的带权最大匹配。这里用到KM算法,由于不是很懂KM算法,所以要感谢 http: // ww
·
2015-11-12 17:07
job
sicily
1402Panic Room(最大流最小割)
View Code 设置超级源点s(此处标号为m的房间就是源点),如果房间k有入侵者(intruder),则存在一条有s指向k的弧,且容量为c(s,k) = INF;然后是处理由门联通的两个房间的关系了。( 1 )如果房间i和j有门且cp在i,则c(i,j) = INF,c(j,i) = 1 ;(
·
2015-11-12 17:06
oom
Sicily
4495. Print permutations
http://soj.me/4495 按字典序生成字符串的全排列 直接递归: #include <iostream> #include <string> #include <cstring> using namespace std; int len; bool ever[9]; string str; voi
·
2015-11-12 16:07
print
sicily
-1029 Rabbit
一. 题意(0.04s) 每一对成熟的兔子可以生一对兔子,兔子在m个月之后成熟,假设兔子都不会死,计算d个月后一共有多少只兔子。 二. 要高精度加法(用string) 三. 公式:ans[m] = ans[
·
2015-11-12 15:53
bit
sicily
2391. Tri graphs【基本DP】
周赛第三次题目。基本的dp,比较简单。注意第一行右边的格子只能从中间走过去:dp[0][2] = d2 + d3; 第二行左边格子只能从第一行中间格子走到:dp[1][0] = d1 + dp[0][1]; 第二行中间格子从第一行的中间,右边和第二行的左边格子走到:dp[1][1] = min2(dp[1][0],dp[0][1],dp[0][2]); 其余情况看箭头确
·
2015-11-12 13:05
Graph
sicily
2377 Ants Colony 【LCA Tarjan算法】
周赛第二次的题目。传说中的最近公共祖先问题(LCA),用Tarjan算法可以过,但注意结果超int. 从题意可以看出这些colony之间构成了一棵树的关系,用Tarjan算法找出每对查询的顶点u,v的公共祖先ancestor,则u,v之间的距离就是dist[u]+dist[v]-2*dist[ancestor],关系显而易见,会者不难。 View Code
·
2015-11-12 13:04
ant
sicily
2372. Non-Decreasing Digits【dp】
第一次周赛的题目。感觉难的太难了。用了一个小时不到切掉3题。剩下时间就看题目了,题目晦涩难懂,结果都没动手写剩下的了。 这道题意大概是Non-Decreasing Digits的定义为:这个数的每一位当前数字的左边数字都不大于当前数字。给定一个数的数字个数n,问有多少个n位的Non-Decreasing Digits(非降序数). 用
·
2015-11-12 13:03
git
sicily
1801 Reading books【DFS】
根据关系构图:相似的两本书之间有一条双向边。然后利用dfs找出每个连通块,除了这个连通块中耗时最小的一本书要用原来的时间读完,其他的书只要一半时间就可以读完,直到全部连通块处理完便可找到答案。 搜索永远是那么得迷人。。。。 View Code #include < iostream > #include
·
2015-11-12 13:00
reading
sicily
-2499 平方数
题目分析: 一个数可以表示成四种状态,所以可以用一个状态数组来存放该数由几个数的平方和表示。1.表示该数本身是完全平方。2.表示该数是由两个平方和3.表示三个。4.表示4个。一次遍历找出本身是完全平方的数,二次遍历找出后两种情况。 #include <iostream> #include <map> using namespace std;
·
2015-11-11 18:51
CI
sicily
1155 Can I Post the letter
题意:判断有向图两点之间是否可通达! 解法:深搜或广搜(注意避免旧路重行) DFS: 1 #include<iostream> 2 #include<vector> 3 #include<string.h> 4 using namespace std; 5 6 struct Road{ 7 int Fro
·
2015-11-11 10:38
post
sicily
1007 To and Fro
题意:字符串的操作处理 1 // Problem#: 8768 2 // Submission#: 2606406 3 // The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License 4 // URI: http://cr
·
2015-11-11 10:38
CI
sicily
1099 Packing Passengers
/**** 题意: 求x,y 满足 x*pa+y*pb=n 同时使得 p = x*ca+y*cb的值最小,若有多种可能,则选择最大x值的组合** 分析: x*pa+y*pb=n 可以用 线性同余方程 求得各组解: X=x+(pb/q)*t, Y=y-(pa/q)*t ** t为整数,显
·
2015-11-11 10:37
in
Sicily
1211. 商人的宣传
题目链接: http://soj.me/1211 Description Bruce是K国的商人,他在A州成立了自己的公司,这次他的公司生产出了一批性能很好的产品,准备宣传活动开始后的第L天到达B州进行新品拍卖,期间Bruce打算将产品拿到各个州去做推销宣传,以增加其影响力。 K国有很多个州,每个州都与其他一些州相邻,但是K国对商人作宣传却有一些很奇怪的规定:1、&nbs
·
2015-11-11 07:28
CI
sicily
1035. DNA matching
题意:判断基因链是否匹配,匹配的双链数加1,并要标记,下次比较不能重用! 解法: 打擂台法 1 #include<iostream> 2 #include<string> 3 #include<vector> 4 #include<cmath> 5 using namespace std; 6 7 bool comp
·
2015-11-11 04:14
match
sicily
4433 DAG?
题意:输入一个有向图,判断该图是否是有向无环图(Directed Acyclic Graph)。 解法:还是深搜 1 #include<iostream> 2 #include<memory.h> 3 #include<stack> 4 5 using namespace std; 6 7 bool paths[101][10
·
2015-11-11 04:13
CI
sicily
4379 bicoloring
题意:输入一个简单(无多重边和自环)的连通无向图,判断该图是否能用黑白两种颜色对顶点染色,使得每条边的两个端点为不同颜色. 解法:由于无自连通节点存在,所以只需进行一次宽搜,遍历所有的点和所有的边,判断能否用两种颜色进行染色即可!宽搜时对访问点需要进行颜色判断和标记! 1 #include<iostream> 2 #include<queue>
·
2015-11-11 04:12
color
sicily
4378 connected components in undirected graph
题意:求图中的连通块数,注意孤立的算自连通! 例如:6个顶点3条路径,其中路径为:1->2 4->5 1->3 &n
·
2015-11-11 04:11
component
sicily
无路可逃?(图的DFS)
题意:在矩阵数组中搜索两点是否可达 解法:DFS 1 #include<iostream> 2 #include<memory.h> 3 using namespace std; 4 struct position{ 5 int x; 6 int y; 7 position(int xx,int yy){ 8
·
2015-11-11 04:10
DFS
sicily
1024 Magic Island
题意:求无向图路径中的最大带权值. 解法:深搜 1 // Problem#: 9859 2 // Submission#: 2661875 3 // The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License 4 // U
·
2015-11-11 04:10
CI
sicily
1200欢迎提出优化方案
水题来的……我的做法是用a[10]数组表示每个数字出现的次数。 1200. Stick 限制条件 时间限制: 1 秒, 内存限制: 32 兆 题目描述 Anthony has collected a large amount of sticks for manufacturing chopsticks. In order to simplify his job,
·
2015-11-11 00:55
优化
Sicily
1510欢迎提出优化方案
这道题我觉得是除1000(A-B)外最简单的题了……不过还是提出一个小问题:在本机用gcc编译的时候我没包括string.h头文件,通过编译,为什么在
sicily
上却编译失败? 1510.
·
2015-11-11 00:55
优化
sicily
1119 Factstone Benchmark
题意:求满足n! < 2^k,n的最大值! 解题:指数比较转换成对数比较,达到降幂! 其中: log (n!) = log(n)+log(n-1)+...+log(1); log(2^k) = k * log(2); 当然也可以使用斯特林(stirling 公式求
·
2015-11-10 22:51
mark
sicily
题目分类
Sicily
题目分类 · 【数据结构/图论】 1310 Right-Heavy
·
2015-11-10 22:21
CI
Sicily
7675. How Many Islands?
ProblemTimeLimit:1secMemoryLimit:256MBDescriptionYouaregivenamarineareamapthatisameshofsquares,eachrepresentingeitheralandorseaarea.FigureB-1isanexampleofamap.Youcanwalkfromasquarelandareatoanotherift
Clown_Zeon
·
2015-11-08 17:00
sicily
Sicily
1068欢迎提出优化方案
1608. Digit Counting 限制条件 时间限制: 1 秒, 内存限制: 32 兆 题目描述 Trung is bored with his mathematics homeworks. He takes a piece of chalk and starts writing a sequence of consecutive integers starting
·
2015-11-08 16:28
优化
Sicily
1931. 卡片游戏
题目地址:1931. 卡片游戏 思路: 纯属数据结构中队列的应用,可以练练手。 具体代码如下: 1 #include <iostream> 2 #include <queue> 3 using namespace std; 4 5 int main() { 6
·
2015-11-08 15:18
游戏
Sicily
1021. Couples
题目地址:1021. Couples 思路: 想清楚了这道题其实很简单。利用夫妻出现的位置作为下标,并设为同一值,第一对夫妻值为1,第二对为2,以此类推,存储完毕即可进入下一步。 利用栈这个数据结构:遍历这个数组,当栈不为空且栈顶元素等于数组出现的元素时,pop掉栈顶元素,其余情况则入栈。循环完毕,若栈为空则为Y
·
2015-11-08 15:17
UP
Sicily
1129. ISBN
题目地址:1129. ISBN 思路: 这道题比较简单,只要看懂题目就应该可以了。那就解释下题目好了,题目意思是按照权值计算这10个数字和,依据这个和计算还差多少可以对11整除,若还差10,那么在这个结尾加上“-X”,若不是10则输出“-”加上还差多少可以整除的那个数。 具体代码如下: 1 #include
·
2015-11-08 15:16
CI
Sicily
1133. SPAM
题目地址:1133. SPAM 思路: 题目意思是说在‘@’的前后出现题目给定的合法字符或者不连续出现‘.’字符的话,这个就是合理的输出。 那么以@为中心,向前,向后扫描,当扫描到不符合字符时,记录此时位置,以前后为区间,输出字符。 具体代码如下: 1 #inclu
·
2015-11-08 15:15
CI
Sicily
1282. Computer Game
题目地址:1282. Computer Game 思路: KMP算法,网上有很多资料,参考了一些网上的解题,收获很大,很感谢那些大神们!!! 通过这道题简单说说我对KMP算法的理解吧(大神们勿喷,虽然没人看我的orz~~~~囧)。 首先输入的是要匹配的字符串,如果这个字符
·
2015-11-08 15:14
game
Sicily
1194. Message Flood
题目地址:1194. Message Flood 思路: 不区分大小写,先全部转化为小写,用stl提供的函数做会很方便。 具体代码如下: 1 #include <iostream> 2 #include <set> 3 #include <string> 4
·
2015-11-08 15:13
message
Sicily
1323. Switch text
题目地址:1323. Switch text 思路: 题目意思不好理解呀。 题目意思是这样的:输入两个测试数据,首先,两个测试数据本身得各自前后倒转,然后两个测试数据倒转后的结果再各自对半互换,然后测试数据二先输出,测试数据一再输出,不断循环下去。还有一点很关键,就是对空行的判断,这个空行可以是空格组成,或者是
·
2015-11-08 15:13
switch
Sicily
1156. Binary tree
题目地址:1156. Binary tree 思路: 如何愉快地前序输出呢,要在存储数据的时候根据位置来存放数据! 一开始被自己蠢哭,一直以为第一个输入的就是根结点(例子的祸害呀啊啊啊!!!!),结果证明不是的,所以呢,我们要找出根结点,那么怎么找根结点呢,我用了一个向量来存储下标值,遍历向量值,把节点的左右值作为下标的那个数据设为非根结点,然后
·
2015-11-08 15:12
binary
Sicily
2005.Lovely Number
题目地址:2005.Lovely Number 思路: 若测试数据出现的次数为奇数,则输出它。 所以,可以先排序,若前后相等,前后都设为0,最后不为0的则可以输出。 具体代码如下: 1 #include <iostream> 2 #include <algorithm> 3 using nam
·
2015-11-08 15:11
number
Sicily
1007. To and Fro
ProblemTimeLimit:1secMemoryLimit:32MBDescriptionMoandLarryhavedevisedawayofencryptingmessages.Theyfirstdecidesecretlyonthenumberofcolumnsandwritethemessage(lettersonly)downthecolumns,paddingwithextrar
Clown_Zeon
·
2015-11-08 08:00
sicily
Sicily
:1351.Multi-key Sorting
Sicily
: 1351.
·
2015-11-07 15:48
sort
Sicily
1034. Forest
题目地址:1034. Forest 思路: 网上很多说用深搜,很任性.......发现广搜也挺好用的,实验课打的(⊙o⊙)…orz........囧。 先找根结点,根据根结点广搜深度,广搜宽度,不过要开一个数组,同一层的累加宽度。别忘了要判断是否合法。 具体代码如下:
·
2015-11-07 14:33
REST
Sicily
1936. Knight Moves
题目地址:1936. Knight Moves 思路: 这道题一开始不理解题意…orz...囧,看大神们理解的。 题意是说一个8*8的国际象棋,骑士以马的形式走动(“日”字型),指定两个点,输出最小的步骤。 可以利用广度搜索解决。  
·
2015-11-07 14:32
move
Sicily
shortest path in unweighted graph
题目介绍: 输入一个无向图,指定一个顶点s开始bfs遍历,求出s到图中每个点的最短距离。 如果不存在s到t的路径,则记s到t的距离为-1。 Input 输入的第一行包含两个整数n和m,n是图的顶点数,m是边数。1<=n<=1000,0<=m<=10000。 以下m行,每行是一个数对v y,表示存在边(v,y)。顶点编号从1开始。&nbs
·
2015-11-07 14:31
Graph
Sicily
connect components in undirected graph
题目介绍: 输入一个简单无向图,求出图中连通块的数目。 Input 输入的第一行包含两个整数n和m,n是图的顶点数,m是边数。1<=n<=1000,0<=m<=10000。 以下m行,每行是一个数对v y,表示存在边(v,y)。顶点编号从1开始。 Output 单独一行输出连通块的数目。 Sample Input 5 3 1 2
·
2015-11-07 14:30
component
sicily
1135 飞越原野 bfs
这题因为两个地方打错变量,WA了好几次。 #include <iostream> #include <queue> #include <memory.h> #define MAX 101 using namespace std; struct status
·
2015-11-07 13:17
bfs
sicily
1001. Alphacode dp
看了动态规划,对dp有个大概理解,这题之前一直卡着,刚开始还用搜索做~ 要注意对0的处理,开始把方程列错,WA数次 dp方程为 a[n] = a[n-
·
2015-11-07 13:16
Alpha
sicily
1791 Philia's Problem
运用蔡勒公式,注意取模用法~~~w = (w%7+7)%7 因为这个WA了好几次 #include <iostream>#include <stdio.h>using namespace std; int main(){ int y, m, d, c, w; int re_d,
·
2015-11-07 13:15
CI
sicily
1159. Sum 高精度加法
#include <iostream> #include <string.h> #define MAX 1005 using namespace std; char result[MAX]; char a[MAX]; char b[MAX]; int result_size; void add(); int main() { int n;
·
2015-11-07 13:15
SUM
sicily
1790. Single Round Match
很简单一道题,高精度判断能否被11整除, WA了好几次,发现输入0 0 时原来要输出YES~ #include <iostream> #include <string.h> #define MAX 10000 using namespace std; char a[MAX]; char
·
2015-11-07 13:14
round
sicily
1031. Campus 单源最短路
这题做得无比纠结~~~WA了无数次,一开始以为算法错了, 调了半天发现不了问题, 最后还是看别人解题报告才过, 原来当输入的S和T不在列表且S=T时,是要输出0的,这个要注意~~ 主要是用一个map把字符串映射到数字 #include <iostre
·
2015-11-07 13:13
最短路
sicily
1796. Max's kingdom
刚开始还打算用map,后来发现,按x第一关键字, y第二关键字排序即可, 感觉有点像基数排序 #include <iostream> #include <stdio.h> #include <algorithm> using namespace std; #define MAX 1000000 struct per {
·
2015-11-07 13:13
dom
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他