• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
DementRock
   首页          管理     
上一页 1 2
2010年2月16日
Sgu 224
摘要: 此题可用位运算优化的搜索算法来做,主要参考M67牛的位运算教程:http://www.matrix67.com/blog/archives/266主要思想是设置3个参数row,ld,rd分别代表纵列,主对角线和副对角线上的禁位情况,此题与n皇后问题稍有不同,是在n*n的棋盘上放置k个,所以需要稍稍修改,详见程序。sgu224Code highlighting produced by Actipro... 阅读全文
posted @ 2010-02-16 22:24 DementRock 阅读(335) 评论(0) 推荐(0)
Sgu 223
摘要: 此题可用状态压缩来做,首先dfs出单独一行所有可能的放置状态,存入数组s(如n=3时s[1]=000,s[2]=100,s[3]=010,s[4]=001,s[5]=101),并设c[t]为s[t]中1的个数。设f[l][t][k]是前l行已放完,第l行状态为s[t]且前l行共放置k个棋子的方法数,则f[l][t][k]=Sum{f[l-1][i][k-c[k]]},其中s[i]和s[t]需满足:... 阅读全文
posted @ 2010-02-16 18:39 DementRock 阅读(403) 评论(0) 推荐(0)
Sgu 222
摘要: 显然当n<k时答案为0当n>=k时,可分为两步:先在n*n的矩阵中选出k行k列,组成一个k*k的子矩阵,再在k*k的子矩阵中放置k个。前一步的方法数为C(n,k)*C(n,k),后一步的方法数为k!,故答案为(C(n,k))^2*k!。Sgu 222Code highlighting produced by Actipro CodeHighlighter (freeware)http:... 阅读全文
posted @ 2010-02-16 12:37 DementRock 阅读(289) 评论(0) 推荐(0)
2010年2月15日
Sgu 404
摘要: 又是水题,做个取余就行了sgu 404Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--1#include<stdio.h>2#include<stdlib.h>3#include<string.h>4intmain(... 阅读全文
posted @ 2010-02-15 20:56 DementRock 阅读(129) 评论(0) 推荐(0)
Sgu 137
摘要: 这是一道构造题。设一个满足对应的N和K的串为S(N,K)。首先要理解题意,一次“rotate” 指,对于S0S2.....SN-1,向左rotate则变换为S2S3..SN-1S0。很显然,如果S(N,K mod N)已经求得,只需每个数加上[K/N]即可。现在,还有(K mod N)个数上要再加1,显然SN-1是其中一个。设经过若干次rotate之后,S(i+p) mod... 阅读全文
posted @ 2010-02-15 18:36 DementRock 阅读(447) 评论(0) 推荐(0)
Sgu 276
摘要: 水题一道,分析好情况就行了(注意p<=0的情况)sgu276Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--1#include<stdio.h>2#include<stdlib.h>3intmain()4{5ints,p,... 阅读全文
posted @ 2010-02-15 18:23 DementRock 阅读(151) 评论(0) 推荐(0)
2010年2月14日
Sgu 129
摘要: 为这题纠结了两天了……这题思路很简单,但情况很多,需细心地一一列举。1、题目中说,多边形内任意两点连线的中点必在多边形内,因此这是个凸多边形。2、用类似凸包的方法,选取最下方的点(若有多个则选取最右边的),以它为基准,对所有点用叉乘进行逆时针排序,这样我们得到了多边形的每一条边。3、对M条待测线段分别处理。判断两个端点是否在多边形内。方法是:由点向任意方向作射线,若与多边形... 阅读全文
posted @ 2010-02-14 23:52 DementRock 阅读(585) 评论(0) 推荐(0)
Sgu 128
摘要: 这题纠结了挺久,近来实在是被sgu上计如潮水的计算几何题给吓到了,这又是其中一道,而且还要用线段树。主要参考了2004年林涛的论文《线段树的应用》例题一,以下引用自原论文:从该题的要求入手,先构出符合要求的图,再解决线段长度之和最小的问题。 1题目显然要求一个以给定的 N个点为顶点的 N多边形。所有线段都要和坐标轴平行,所以每个点只能与上下左右四个点相连。由于与一个点相连的两条线段成 90度,每个... 阅读全文
posted @ 2010-02-14 15:38 DementRock 阅读(1221) 评论(1) 推荐(0)
Blog搬家日志
摘要: 终于地,我忍受不了blog.com的服务器速度了,于是博客暂时搬到这里。仍旧无奈地期待潜在的资金支持,但看来短期内我还是要继续在各大平台间流浪了…… 阅读全文
posted @ 2010-02-14 15:23 DementRock 阅读(128) 评论(0) 推荐(0)
上一页 1 2
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3