AOJ 0118 Property Distribution (DFS)】的更多相关文章

http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=46522 简单DFS,题目翻译参考  http://blog.csdn.net/synapse7/article/details/14453017 #include <iostream> #include <cstdio> #include <cmath> #include <vector> #include <cstring>…
题目链接:http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0118 题意:给定一个矩阵,同类字符相连的为一个块,问总共有几个块. 输入:h,w(行和列)0 <= h <= 100,0 <= w <= 100 矩阵 输入包含多组用例,以0,0结束. 输出:块数. 代码: #include <iostream> using namespace std; typedef long long ll; #defin…
题意:在H * W的矩形果园里有苹果.梨.蜜柑三种果树, 相邻(上下左右)的同种果树属于同一个区域,给出果园的果树分布,求总共有多少个区域. 输入:多组数据,每组数据第一行为两个整数H,W(H <= 100, W <= 100), H =0 且 W = 0代表输入结束.以下H行W列表示果园的果树分布, 苹果是@,梨是#, 蜜柑是*. 输出:对于每组数据,输出其区域的个数. #include<cstdio> #include<vector> #include<que…
タナカ氏が HW アールの果樹園を残して亡くなりました.果樹園は東西南北方向に H × W の区画に分けられ.区画ごとにリンゴ.カキ.ミカンが植えられています.タナカ氏はこんな遺言を残していました. 果樹園は区画単位でできるだけ多くの血縁者に分けること.ただし.ある区画の東西南北どれかの方向にとなりあう区画に同じ種類の果物が植えられていた場合は.区画の境界が分からないのでそれらは 1 つの大きな区画として扱うこと. 例えば次のような 3 × 10 の区画であれば ('リ'はリンゴ.'カ'はカキ.…
Property Distribution タナカ氏が HW アールの果樹園を残して亡くなりました.果樹園は東西南北方向に H×W の区画に分けられ.区画ごとにリンゴ.カキ.ミカンが植えられています.タナカ氏はこんな遺言を残していました. 果樹園は区画単位でできるだけ多くの血縁者に分けること.ただし.ある区画の東西南北どれかの方向にとなりあう区画に同じ種類の果物が植えられていた場合は.区画の境界が分からないのでそれらは 1 つの大きな区画として扱うこと. 例えば次のような 3 × 10 の区画で…
-->Property Distribution 原文是日语,算了算了,直接上我大中华母语吧  Descriptions: 在H * W的矩形果园里有苹果.梨.蜜柑三种果树, 相邻(上下左右)的同种果树属于同一个区域,给出果园的果树分布,求总共有多少个区域. Input 多组数据,每组数据第一行为两个整数H.W(H <= 100, W <= 100), H =0 且 W = 0代表输入结束.以下H行W列表示果园的果树分布, 苹果是@,梨是#, 蜜柑是*. Output 对于每组数据,输出…
题目描述: Limak is a little polar bear. He has recently learnt about the binary system. He noticed that the passing year has exactly one zero in its representation in the binary system — 201510 = 111110111112. Note that he doesn't care about the number o…
有一个筒,从A口可以放球,放进去的球可通过挡板DE使其掉进B管或C管里,现有带1-10标号的球按给定顺序从A口放入,问是否有一种控制挡板的策略可以使B管和C管中的球从下往上标号递增. 输入: 第一行输入数据组数N.接下来N行为N组具体数据,每组数据中有10个整数,代表球的放入顺序. 输出: 对于每组数据,若策略存在,输出YES:若不存在,输出NO 解法1:DFS 思路:每次判断当前小球是否大于左边容器的最上端的小球,如果可以就放,否则再去看右边的.一旦发现左右两边都不能放,那就只能判定是NO了.…
日文题... 题意:一个面积为H*W的果园,种了苹果,梨和蜜柑.相邻(上下左右)的果树属于同一个区域,问果园共有多少个区域. 分析:迷宫问题.对于每一个格子,可以用深度优先搜索把相同果树的格子遍历并标记.也就是说,每做一次DFS,消灭掉一个区域.只需要遍历果园,对每一个未被标记的格子做DFS,做DFS的次数就是果园的区域数.这里不需要另外用其他数组标记格子已访问,只需要将格子的元素改为一个不会出现的元素如1即可. C++代码: #include <cstdio> #include <cs…
题意分析 现有n个人,n种书,给出每人对n种书的喜欢列表,求有多少种方案满足以下条件: 1.每个人都分得自己喜欢的书: 2.每个人分得书的种类各不相同,即所有种类的书均得到分配 1.采用生成测试法 生成过程 对于每个人来说,枚举每本书的状态(0/1),有2^20: 最多有20个人 ,则有20*2^20 = 10*2^21 ≈ 10^3 * 10 ^3 * 10 = 10^ 7 考虑上测试的时间,TLE. 2.优化 充分利用题目中给的信息,即每个人对不同书的喜爱我们是已知的.对于每个人来说,我们不…