当前位置: 首页 > 编程日记 > 正文

poj1129Channel Allocation

http://poj.org/problem?id=1129

四色定理  最多有四色 从1到四搜

View Code
 1 #include <iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<stdlib.h>
 5 using namespace std;
 6 int n,w[100][100],co[100],mi,flag;
 7 void dfs(int x,int v)
 8 {
 9     int i,j,f,k=v;
10     if(flag)
11     return ;
12     if(x>n)
13     {
14         mi = v;
15         flag = 1;
16         return ;
17     }
18     else
19     {
20         for(i = 1; i <= 4 ; i++)
21         {
22             f = 1;
23             for(j = 1; j <= n ; j++)
24                 if(w[x][j]&&co[j]==i)
25                 {
26                     f =0 ;
27                     break;
28                 }
29             if(f)
30             {
31                 co[x] = i;
32                 if(k>i)
33                    dfs(x+1,k);
34                 else
35                    dfs(x+1,i);
36                 co[x] = 0;
37             }
38         }
39     }
40 }
41 int main()
42 {
43     int i,j,k,c,m;
44     char s[50];
45     while(cin>>n)
46     {
47         memset(w,0,sizeof(w));
48         flag = 0;
49         if(!n) break;
50         m = n;
51         while(m--)
52         {
53             cin>>s;
54             k = strlen(s);
55             c = s[0]+1-'A';
56             for(i = 2 ; i < k ; i++)
57             {
58                 j = s[i]+1-'A';
59                 w[c][j] = 1;
60                 w[j][c] = 1;
61             }
62         }
63         dfs(1,1);
64         if(mi==1)
65         printf("1 channel needed.\n");
66         else
67         printf("%d channels needed.\n",mi);
68     }
69     return 0;
70 }

转载于:https://www.cnblogs.com/shangyu/archive/2013/01/27/2879013.html

相关文章:

WCF 第二章 契约

在原子和金钱世界中&#xff0c;契约是两个或多个组织以一个已知的价格提供商品和服务的合同。在比特和服务的世界中&#xff0c;契约有类似的功能:它是两个或多个组织之间确定消息交换和消息条款及条件的合同。 契约是由服务终结点发送或接收的消息的描述。每一个终结点都由AB…

织梦 新建 php arclist,织梦arclist按照自定义字段来调用相关文章

织梦arclist按照自定义字段来调用相关文章&#xff0c;这对于想要在首页调用某个自定义字段的文章的同学来讲&#xff0c;非常不错&#xff0c;接下来看教程打开 include aglibrclist.lib.php 找到&#xff1a;//时间限制(用于调用最近热门文章、热门评论之类)&#xff0c;这里…

提高php编程效率的小结

1.如果将类的方法定义为&#xff1a;static,它的执行效率将提升为近4倍 2.php中数组的元素调用&#xff0c;使用关联数组优于索引数组 3.使用each快于print. 4.尽量使用foreach()替代for(). 5.销毁那些不用的变量尤其是大数组&#xff0c;如&#xff1a;unset().以便释放内存 6…

摄像机的几个重要的技术指标

(1)清晰度 清晰度是一个摄像机的最重要指标&#xff0c;在监控系统中对图像的清晰度有很高的要求&#xff0c;如在交通监控中,对车辆要能看清车牌号码&#xff0c;对行人要能看清脸部特征&#xff0c;如果这些都看不清楚&#xff0c;那么监控将失去意义。线数的多少决定着清晰度…

Docker容器入门-基本命令的使用

目前容器技术使用相当广泛 不会或者没有使用过容器感觉都不像是个搞技术的 所以&#xff0c;我也就docker相关内容做一个整理 只有不断的学习&#xff0c;才能保持自己的竞争力 什么是容器&#xff1f; 容器是一种轻量级、可移植、自包含的软件打包技术&#xff0c;使应用程序可…

卸载linux系统装win,如何在计算机上删除 Linux 并安装 Windows

多个 IDE 驱动器Device Boot Start End Blocks Id System/dev/hda1 * 1 500 4016218 83 Linux native (IDE hard drive 1, partition 1)/dev/hda2 501 522 176715 82 Linux swap (IDE hard drive 1, partition 2)/dev/hdb1 1 500 4016218 83 Linux native (IDE hard drive 2, p…

卡尔曼滤波— Constant Velocity Model

假设你开车进入隧道&#xff0c;GPS信号丢失&#xff0c;现在我们要确定汽车在隧道内的位置。汽车的绝对速度可以通过车轮转速计算得到&#xff0c;汽车朝向可以通过yaw rate sensor(A yaw-rate sensor is a gyroscopic device that measures a vehicle’s angular velocity ar…

优化实战:不要随便将字段折腾来折腾去的

到新公司先看了看数据库的性能&#xff0c;查看一个存储占用的CPU巨多&#xff0c;而且执行次数也特别多&#xff0c;打开一看&#xff1a;alterPROCEDURE[dbo].[IPLogInsert]IPchar(15) 255.255.255.255ASBEGINSETNOCOUNT ON; declarecurrIdintdeclaretodaydatetime--SET cur…

SQL SERVER 架构管理

架构特点&#xff1a; 架构是数据库级的安全对象&#xff0c;是数据库中表、视图、存储过程等对象的容器&#xff0c;是形成单个命名空间的数据库实体的集合&#xff0c;一个架构只能有一个拥有者。 将所有权与架构分离的意义&#xff1a; ①架构所有权和架构范围内的安全对象可…

linux 端口 流量统计,Linux下如何对端口流量进行统计

在不修改源代码的情况下对程序暴露端口流量进行监控统计&#xff0c;可以利用Linux中自带的Iptable添加简单的规则让其起到端口流量统计的作用。但是需要注意的是在服务器重启、Iptable服务重启的时候统计数据会被重置清零。添加需要统计的端口1、输入监控下面示例是监控目标端…

如何轻松实现iOS9多任务管理器效果(iCarousel高级教程)

前言 iOS9系统下 为了我司APP的兼容性问题 特意把手上的iOS Mac XCode都升级到了最新的beta版 然后发现iOS9的多任务管理器风格大变 变成了下面这种样子 我忽然想起来之前的文章提到我最爱的UI控件iCarousel要实现类似这种效果其实是很简单的 一时兴起就花时间试验了一下 效果还…

linux并发控制之自旋锁

自旋锁是一种对临界资源进行互斥访问的典型手段&#xff0c;其名来源于它的工作方式。通俗的讲&#xff0c;自旋锁就是一个变量&#xff0c;该变量把一个临界区标记为“我当前在运行&#xff0c;请等待”或者标记为“我当前不在运行&#xff0c;可以被使用”&#xff0c; 如果A…

半透明遮罩层覆盖整个可视区域

我们经常会遇到点击一个按钮弹出一个对话框和一个变暗的遮罩层&#xff0c;简单的写法只能让遮罩层覆盖浏览器的大小&#xff0c;那么怎么让遮罩层覆盖全部区域呢&#xff1f; css代码如下&#xff1a; 1 html,body {2 height: 100%;3 margin: 0;4 padding: 0;5 }6…

观察内核linux行为,Linux 学习:基于proc观察Linux行为

内容简介本篇博文的主要内容是通过/proc文件&#xff0c;对Linux系统管理有一个初步的认识。在Linux中&#xff0c;proc文件系统提供了一套在用户态检查内核状态和系统特征的机制。proc文件系统将进程的地址空间、系统的硬件信息、系统相关机制(中断、I/O)等内容全部设置为虚拟…

对数据库表中的某一字段去重分组排序

1、问题背景 某数据库t_tab_ab中有两个字段a和b&#xff0c;例如以下所看到的&#xff1a; 查询前&#xff1a; 查询后&#xff1a; a b a b 1 2 1 2 1 3 2 3 1 4 …

设置应用图标badge(徽章)

// 图标右上角的数字[UIApplication sharedApplication].applicationIconBadgeNumber msgCount result.status result.follower; 转载于:https://www.cnblogs.com/pretty-guy/articles/4106529.html

hdu - 1087 - Super Jumping! Jumping! Jumping!

题意&#xff1a;求最大升序和。 题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid1087 ——>>设d[i]表示以第i个数为终点的最大升序和&#xff0c;然后从第1个数到第i-1个数为终点的最大升序和进行检查&#xff0c;向后递推即可。 #include <iostrea…

linux 读取大量图片 内存,10 张图帮你搞定 TensorFlow 数据读取机制

导读在学习tensorflow的过程中&#xff0c;有很多小伙伴反映读取数据这一块很难理解。确实这一块官方的教程比较简略&#xff0c;网上也找不到什么合适的学习材料。今天这篇文章就以图片的形式&#xff0c;用最简单的语言&#xff0c;为大家详细解释一下tensorflow的数据读取机…

安卓真机测试安装时报错

在将程序发布到手机上时提示该错误&#xff1a; INSTALL_FAILED_INSUFFICIENT_STORAGE 手机内存满了...删除程序... 就可以安装了转载于:https://www.cnblogs.com/H-K-Home/p/5279819.html

C#学习笔记——捕获当前屏幕

编程思路&#xff08;API 编程&#xff09;&#xff1a; 先调用 GetForegroundWindow 获取当前活动程序窗口句柄&#xff0c;然后调用 GetWindowDC 获取窗口的设备句柄&#xff08;或 GetDC 函数&#xff09;&#xff0c;调用 BitBlt 位图传输函数将位图拷贝到兼容的设备场景中…

Exception loading sessions from persistent storage

严重: Exception loading sessions from persistent storage java.io.EOFException 删除Tomcat里面的work/Catalina/localhost下的内容即可解决 Tomcat在启动时出现如下异常问题&#xff1a; 严重: IOException while loading persisted sessions: java.io.EOFException严重: E…

linux独立应用程序开发,Linux应用程序开发(一)

Linux应用程序开发(一)---移植thttpdSqlite3PHP5到arm linux(4)移植环境(红色粗字体字为修改后内容&#xff0c;蓝色粗体字为特别注意内容)1&#xff0c;主机环境&#xff1a;VMare下CentOS 5.5 &#xff0c;1G内存。2&#xff0c;集成开发环境&#xff1a;Elipse IDE3&#xf…

面向过程(结构化)分析方法与面向对象分析方法的区别

面向过程是从问题的总体目标开始&#xff0c;抽象底层的细节&#xff0c;先专心构造高层的结构&#xff0c;然后再一层一层地分解合细化。 面向对象则是运用对象、类、继承、封装、聚合、消息传递、多态性等概念来构造系统的方法。 面向过程着重于解决问题的从粗略到详尽的方法…

eclipse.ini内存设置

-vmargs -Xms128M -Xmx512M -XX:PermSize64M -XX:MaxPermSize128M 这里有几个问题&#xff1a;1. 各个参数的含义什么&#xff1f;2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动&#xff0c;而有些机器无法启动&#xff1f;3. 为何将上面的参数写…

如何运用下载来的模板

&#xff08;1&#xff09;在相应的网址下载模块文件 例如&#xff1a;https://github.com/yagitoshiro/ImageAsResized &#xff08;2&#xff09;把下载的模块包解压放到C:\Users\Administrator\AppData\Roaming\Titanium\modules\android 目录结构如下所示&#xff1a; 而这…

红旗linux桌面版反应慢,红旗Linux6.0桌面版使用感受

1.红旗Linux6.0桌面版中文支持比较好&#xff0c;毕竟是国人出的发行版&#xff1b;输入法很不错&#xff1b;自动挂载win分区(好像Ubuntu、OpenSUSE、Fedora等这些流行发行版的新版都支持了)&#xff0c;自动安装网络&#xff0c;用路由的话可以直接上网了。2.处处向windows靠…

device.cpp

Java代码 #include "device.h" #include <math.h> //Class Timer member function implementation int Timer::createTimer() { _start 0; _clocks 0; #ifdef _WIN32 QueryPerformanceFrequency((LARGE_INTEGER* )&_freq); #else _freq (long long)1.0E…

简明python教程 --C++程序员的视角(九):函数式编程、特殊类方法、测试及其他...

函数式编程 Lambda exec&#xff0c;eval和assert语句&#xff0c;repr函数 lambda语句 用来创建简短的单行匿名函数 print_assign lambda name, value: name str(value)等同于def print_assign(name, value): return name str(value) lambda需要一个参数&#xf…

防止重复提交订单-(转)

防止重复提交 Button1.Attributes.Add("onclick", "this.value正在提交中&#xff0c;请等待……;this.disabledtrue;" this.GetPostBackEventReference(Button1)); 于是根据这个写了个只能提交一次的控件&#xff1a; publicclassButtonSubmitOn…

linux pps 包 网卡,linux下安装PPS

到官方下载FEDORA版RPM包。[talenliangshan Downloads]$ sudo yum localinstall PPStream.rpm已加载插件&#xff1a;axelget, fastestmirror, presto, priorities, refresh-packagekit, remove-with-leaves设置本地安装进程诊断 PPStream.rpm: PPStream-1.0.2-11.i386PPStream…