排序:
默认
按更新时间
按访问量

sgu 273Game Po (区间dp)

题意:4种颜色,两个混合可以组成另一种,给出所有组合以及组合后的结果,给一串颜色,任意位置合并最后合并成一个颜色的所有可能性tip:dp[I][j][k]表示从I到j是否可以变成第k个颜色,注意可能有同样两种颜色组合,但形成不一样的颜色,所以我用了前向星把他们连起来,而且从I到j形成的颜色也可能是...

2017-09-27 16:56:42

阅读数:158

评论数:0

判断线段相交并求交点

const double precision = 1e-6; const double inf = (1<<30); const int maxn = 1e6+10; int n; struct Tpoint{ double x; double y; Tpoin...

2017-09-25 21:28:45

阅读数:194

评论数:0

sgu-264. Travel 稳定婚姻问题

题意:男女配对,最后没有一对男女对对方的喜欢程度都高于现在的配偶tip:感觉和二分图差不多嘛。所有男的放队列 一个个出来, 先找最喜欢的,要是她单身就结婚 不单身就问她要不要私奔 私奔了原来配的就又单身 放入队列#include <cstdio> #include <io...

2017-09-22 01:08:01

阅读数:290

评论数:0

sgu265Wizards(计算几何)

题意:一个空间直角坐标系内,对一个点有三种操作: 1.平移(x,y,z)⇒(x+a,y+b,z+c); 2.缩放(x,y,z)⇒(ax,by,cz); 3.绕一个向量(x,y,z)顺时针旋转α角(角度制)。 对空间内的m个点给出n个操作,求每个点在操作后的坐标。tip:每次操作在之前的基础上左...

2017-09-22 00:56:33

阅读数:202

评论数:0

sgu258 Almost Lucky Numbers (数位dp)

题意:定义一个具有2n位的正整数,其前n位之和与后n位之和相等,则为lucky数。给定一个区间l,r,问有多少个正数可以通过修改某一位数从而变成lucky数?不能含前导0。tip:定义dp[i][j][p][q]表示前I位和为j其中数位上最大值是p 最小值是q的方案数。。 我们先把整个区间分开,...

2017-09-18 11:23:57

阅读数:336

评论数:0

SGU 271 Book Pile(deque)

题意:一开始桌子上从上到下放着N本书(从上往下输入) M组操作: 1.将前K本书翻转,2.在头上加一本书。最后输出书的顺序。(从上往下输出)tip:看起来像splay==线性做法是用deque 上面k本维护一个。。下面的一次往上添加,每次遇到add先加到上面的deque里,如果超过了k本,拿...

2017-09-14 11:34:56

阅读数:133

评论数:0

sgu392Cyclic Troubles

题意:n*m矩阵,每个点固定可以往左往右往上或往下走,每个点有个字母, q个循环问会不会出现出现给定的串,其中(s)num表示s串循环了多少次tip:预处理每个点往后走1,2,4,7,16。。。步走到哪,,类似倍增的思想,(询问总长度就1e9,说明只有往后走2^31就够了)void get_Ha...

2017-09-09 16:50:36

阅读数:102

评论数:0

sgu 237Galaxy X: Episode I - Masters of Mind (dp)

题意:给你一个包含’‘、’?’、’!’、’a’~’z’的字符串,其中’‘可以被任意字符串替换(包括空串),’?’必须恰好被一个字符替换,’!’必须恰好被三个字符替换。要求按规则替换后原串要变成一个回文串且长度要求最小;若长度相同则要求字典序最小。 tip:第一次做的时候按照dp[i][j]表示前I...

2017-09-03 10:56:59

阅读数:131

评论数:0

sgu236Greedy Path(最优比例路径)

题意:给出一个有向图,每条边有一个权值和时间花费。如果图中无环,输出0,如果有环,找出一个最大的环,最大的意思是环上的权和 / 时间和 最大。tip:最优比例的题一般二分答案,把题目就变为询问是否存在一个环使得Σcost/Σtime>=k 整理有: Σ(k∗time[v]−cost[v...

2017-08-31 19:15:09

阅读数:136

评论数:0

ural1223 鹰蛋(dp优化)

题意:有一堆共 M 个鹰蛋,一位教授想研究这些鹰蛋的坚硬度 E。他是通过不断 从一幢 N 层的楼上向下扔鹰蛋来确定 E 的。当鹰蛋从第 E 层楼及以下楼层落下 时是不会碎的,但从第(E+1)层楼及以上楼层向下落时会摔碎。如果鹰蛋未摔 碎,还可以继续使用;但如果鹰蛋全碎了却仍未确定E,这显然是一个失...

2017-08-31 01:21:43

阅读数:148

评论数:0

zoj2318 getout(计算几何)

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1318题意:你是一个圆,二维坐标中有很多其他n个圆,给出n个圆心及半径,再给你自己的圆心及半径,问这个圆能不能逃出这n个圆的包围。tip:好神奇的题。。首先考虑把自己这个圆变成点...

2017-08-31 01:07:14

阅读数:103

评论数:0

SGU235The Queen(BFS)

题意:一个n∗n的棋盘,每个位置上可以放黑子,白子,皇后(有且仅有一个)或不放。问皇后走m步后能走到多少个不同的格子。皇后可以走上下左右斜任意长度只要没遇到W,遇到B后会停下,B不在存在。tip:bfs。。首先我们得知道假如p步可以到的格子,那么第p+2k(k≥1) 步都可以到,因为可以来回走...

2017-08-26 00:02:19

阅读数:132

评论数:0

sgu224Little Queens 225. Little Knights

题意:n*n(n<=10)的棋盘,求出放置m(m<=n*n)个皇后的方案数。tip:状态压缩+位运算 一行一行dfs dfs(当前行号,列状态(哪个可以选可以不选),左上来的(哪个可以选可以不选),右上来的(哪个可以选可以不选),已放置棋子数)#include <cstdio...

2017-08-25 11:26:54

阅读数:113

评论数:0

sgu226. Colored graph

题意:给你一个n(n<=200)个点,m(m<=n*n)的有向图,然后每条边都有一个颜色,然后要求求出1->n的一条最短路径,满足相邻的两条边不能是同一种颜色。输出最短路径长度。tip:bfs vis多加一维来的颜色。。#include <cstdio> #inclu...

2017-08-25 11:06:34

阅读数:83

评论数:0

sgu230(拓扑排序) 231

题意:n*n(n<=10)的棋盘,求出放置m(m<=n*n)个皇后的方案数。tip:状态压缩+位运算 ,dfs一行一行来 DFS(当前行号 ,列状态,因为左上来的 当前行哪个格子能不能放, 右上来的 当前行哪个格子能不能放,已放置的棋子数)#include <c...

2017-08-25 11:00:54

阅读数:102

评论数:0

sgu223Little Kings(状压)

题意:两个车互不攻击,当且仅当它们不在同一行或同一列上。输入整数n和k,你需要求出在n*n的国际象棋棋盘上放k个互不攻击的车有多少种方法。 tip:你一个N*N的棋盘,要你在其中放入K个国王,每个国王会攻击到以它为中心的九宫格的相邻8个位置,求方案总数. 用F [ i ] [ j ] [ k ]...

2017-08-25 10:49:17

阅读数:92

评论数:0

sgu222 Little Rooks

题意:两个车互不攻击,当且仅当它们不在同一行或同一列上。输入整数n和k,你需要求出在n*n的国际象棋棋盘上放k个互不攻击的车有多少种方法。 tip:组合数学 Cnk*cnk*k!(n行n列选k个)#include <cstdio> #include <iostream> ...

2017-08-25 10:43:16

阅读数:112

评论数:0

sgu220Little Bishops(dp)

题意:在n*n的棋盘上放K个象,使得两两之间不互相攻击。有多少种放法?tip:棋盘按照(i+j)的奇偶黑白染色,则在黑色格子中放的象不可能攻击到白色格子,分开考虑并将棋盘翻转45度。(旋转后就是一行一列只能放一个) f[i][j]=f[i-1][j]+f[i-1][j-1]*(a[i]-(j-1...

2017-08-25 10:32:45

阅读数:83

评论数:0

sgu234 Black-White King Strikes Back(二分图 输出方案)

题意:n*m的0,1矩阵(n,m<=200),要你在1的地方放士兵,不能现 两个士兵相邻,问最多可以放多少个?tip:根据i+j的奇偶性黑白染色构建二分图,然后跑一个最大匹配,然后ans=1的个数-最大匹配数,构建图的方案时,先把没匹配的都选上,那么和这些有边的就不能选,和这些不能选有边的...

2017-08-25 09:55:02

阅读数:134

评论数:0

sgu233The Greatest Angle(计算几何)

题意:给出一个圆O和严格在圆内的两点A,B,在圆上求一点C使得∠ACB最大。tip:A,B,C所构成的外接圆与圆O相切时最大。因为AB所在的圆,无论半径多大,所对应的圆周角是固定的,且半径越大角度越小,所有在相切时最好。 解方程: 设小圆的圆心为p,两圆相切: OP = R-r = R-sq...

2017-08-25 09:36:17

阅读数:74

评论数:0

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