2012年7月17日

农场灌溉问题(回溯)

摘要: 时限:1000ms 内存限制:10000K 总时限:3000ms描述:一农场由图所示的十一种小方块组成,蓝色线条为灌溉渠。若相邻两块的灌溉渠相连则只需一口水井灌溉。输入:给出若干由字母表示的最大不超过50×50具体由(m,n)表示,的农场图输出:编程求出最小需要打的井数。每个测例的输出占一行。当M=N=-1时结束程序。输入样例:2 2 DK HF 3 3 ADC FJK IHE -1 -1输出样例:2 3提示:参考迷宫问题,实现时关键要解决好各块的表示问题。#include<iostream>using namespace std;class BaseDate{ publ 阅读全文

posted @ 2012-07-17 18:32 IThinktan 阅读(1133) 评论(0) 推荐(0) 编辑

求图像周长(回溯)

摘要: 时限:1000ms内存限制:10000K 总时限:3000ms描述:给一个用 . 和X表示的图形,图形在上、下、左、右、左上、左下、右上、右下8个方向都被看作是连通的,并且图像中间不会出现空洞,求这个图形的边长。输入:首先给出m、n、x、y四个正整数,下面给出m×n的图形,x、y表示点击的位置,全0表示结束。输出:点击的图形的周长。输入样例:2 2 2 2 XX XX 6 4 2 3 .XXX .XXX .XXX ...X ..X. X... 0 0 0 0输出样例:8 18#include<iostream>using namespace std;int R,C;//行 阅读全文

posted @ 2012-07-17 18:07 IThinktan 阅读(626) 评论(0) 推荐(0) 编辑

活动安排(贪心算法)

摘要: 时限:1000ms内存限制:10000K 总时限:3000ms描述:Jack是一名nwpu的大一新生,对学校举办的各种活动都十分的好奇,想尽可能多的参加这些活动。Npwu每天共有N项活动,其开始结束时间分别为B[i],E[i],(i = 1,2,……N)请问Jack一天最多能参加几项活动。当然,Jack在同一时间内只能参加一项活动,即jack参加的活动时间上不能重叠,但时间为[t1,t2],[t2,t3]的两个活动是可以同时参加的。输入:第一行 一个整数N(1<=n<=1000)表示活动总数。接下来N行表示各活动的起始,结束时间0<=B[i]<E[i]<24输出: 阅读全文

posted @ 2012-07-17 16:28 IThinktan 阅读(889) 评论(0) 推荐(0) 编辑

子集(回溯)

摘要: 时限:1000ms内存限制:10000K 总时限:3000ms描述:有一集合中有 N 个元素,每个元素均为自然数。给定一个 total,求满足条件的所有子集,子集中各元素之和应等于total。输入:第一行一个整数表示有N个元素。第二行N个整数,表示集合里的每个元素。第三行一个整数表示给定的total。输出:输出所有的子集。每行输出一组可行的子集。每个元素之间有一空格,元素按从小到大排序。输入样例:61 2 3 4 7 104输出样例:1 34#include<stdio.h>int Arr[100]={0};//存放是否将第i个数选入子集int n,num[100],total;/ 阅读全文

posted @ 2012-07-17 15:59 IThinktan 阅读(357) 评论(0) 推荐(0) 编辑

找倍数(回溯)

摘要: 时限:1000ms内存限制:10000K 总时限:3000ms描述:对于每个输入的数字(如:2),则要求 给出一个由1,0构成的十进制整数,且该整数为输入数字的某个倍数,且是满足该条件的最小数(如2对应的10)。输入:数字n,n等于0时停止。输出:n的一个满足条件的最小倍数。输入样例:20输出样例:10#include<stdio.h>#include<stdlib.h>#define deep 20int n;//待查的数int Arr[20]={0};//存放由0,1构成的十进制数的每一位int Crr[20]={0},t=0;//用于保存int p;//标记串有效 阅读全文

posted @ 2012-07-17 11:13 IThinktan 阅读(780) 评论(0) 推荐(1) 编辑

六数码问题(回溯)

摘要: 时限:1000ms内存限制:10000K 总时限:3000ms描述:现有一两行三列的表格如下:A B CD E F把1、2、3、4、5、6六个数字分别填入A、B、C、D、E、F格子中,每个格子一个数字且各不相同。每种不同的填法称为一种布局。如下:1 3 52 4 6布局12 5 64 3 1布局2定义α变换如下:把A格中的数字放入B格,把B格中的数字放入E格,把E格中的数字放入D格,把D格中的数字放入A格。定义β变换如下:把B格中的数字放入C格,把C格中的数字放入F格,把F格中的数字放入E格,把E格中的数字放入B格。问:对于给定的布局,可否通过有限次的α变换和β变换变成下面的目标布局:1 2 阅读全文

posted @ 2012-07-17 08:44 IThinktan 阅读(848) 评论(0) 推荐(0) 编辑

导航