
挑战程序设计
WINDSOUL_Q
但行好事 莫问前程
展开
-
部分和问题
描述 给定整数a1、a2、…….an,判断是否可以从中选出若干数,使它们的和恰好为K。 输入 首先,n和k,n表示数的个数,k表示数的和。 接着一行n个数。 (1<=n<=20,保证不超int范围) 输出 如果和恰好可以为k,输出“YES”,并按输入顺序依次输出是由哪几个数的和组成,否则“NO” 样例输入 4 13 1 2 4 7 样原创 2017-05-25 20:59:44 · 259 阅读 · 0 评论 -
抽签
写有数字的n个卡片放入口袋中,从中抽取4次,每次记下纸片上的数字后将卡片放回口袋,如果4个数字的和是m,则胜利。 O(n^2logn)的算法//输入 int n,m,k[MAX_N];// 保存2个数的和的数列 int kk[MAX_N*MAX_N];bool binary_search(int x ) { // x的存在范围是kk[L],kk[L+1],...kk[R-1] in原创 2017-05-18 21:29:13 · 293 阅读 · 0 评论 -
Lake Counting(POJ NO.2386)
有一个大小为n*m的园子,雨后积起了水。八连通的积水被认为是连接在一起的。请求出园子里总共有多少水洼?(八连通指的是下图中相对w的*的部分) *** *w* *** 限制条件:n,m<=100 思路: 1.遍历整个园子。遇到w就进行dfs,同时水坑数+1 2.dfs函数: 1)把w变成”.“。 2)遍历四个方向,寻找符合的方向(不超出边界,该位置是“w"),把符合的方向的坐标作为递归的参数 3)递归原创 2017-06-02 20:46:48 · 340 阅读 · 0 评论