Channel Allocation
Description
When a radio station is broadcasting over a very large area, repeaters are used to
retransmit
(转播) the signal so that every receiver has a strong signal. However, the channels used by each repeater must be carefully chosen so that nearby repeaters do not
interfere
(干涉) with one another. This condition is satisfied if
adjacent
(邻近的) repeaters use different channels.
Since the radio frequency (频率) spectrum (光谱) is a precious resource, the number of channels required by a given network of repeaters should be minimised (使缩到最小). You have to write a program that reads in a description of a repeater network and determines the minimum (最小的) number of channels required. Input
The
input
(投入) consists of a number of maps of repeater networks. Each map begins with a line containing the number of repeaters. This is between 1 and 26, and the repeaters are referred to by
consecutive
(连贯的)
upper-case
(大写) letters of the
alphabet
(字母表) starting with A. For example, ten repeaters would have the names A,B,C,...,I and J. A network with zero repeaters
indicates
(表明) the end of input.
Following the number of repeaters is a list of adjacency (毗邻) relationships. Each line has the form: A:BCDH which indicates (表明) that the repeaters B, C, D and H are adjacent (邻近的) to the repeater A. The first line describes those adjacent to repeater A, the second those adjacent to B, and so on for all of the repeaters. If a repeater is not adjacent to any other, its line has the form A: The repeaters are listed in alphabetical (字母的) order. Note that the adjacency is a symmetric (对称的) relationship; if A is adjacent to B, then B is necessarily adjacent to A. Also, since the repeaters lie in a plane, the graph (图表) formed by connecting adjacent repeaters does not have any line segments (段) that cross. Output
For each map (except the final one with no repeaters), print a line containing the minumum number of channels needed so that no adjacent channels
interfere
(干涉). The
sample
(试样的)
output
(输出) shows the format of this line. Take care that channels is in the
singular
(单数的) form when only one channel is required.
Sample Input 2 A: B: 4 A:BC B:ACD C:ABD D:BC 4 A:BCD B:ACD C:ABD D:ABC 0 Sample Output 1 channel needed. 3 channels needed. 4 channels needed.
Analysis
这个题的意思是一个无线广播需要一些中继器,但是相邻的中继器如果使用同样的频率会有相互影响,给定所有的相邻关系,问最少使用几种频率可以使它们不相互影响。
为了更好的建模,我们可以把它转化为给一些点染色,同时使相邻的点染不同的颜色,最少需要几种颜色。
用一个结构体数组存储与每个点相邻的点,枚举每个点,将这个点的相邻的点的颜色标记,然后再枚举这个点的颜色,找到第一个(也就是最小的)没有被标记的颜色,就是这个点的颜色,最后找出最大的颜色编号就是答案。
详细见代码。。。
Source Code
|
详细解决方案
POJ 1129 - Channel Allocation
热度:14 发布时间:2024-01-14 20:23:38.0
相关解决方案
- 请问 RMAN 备份 CHANNEL 与 FILESPERSET 的关系
- Dispatcher.BeginInvoke(() => UpdateStatus("Channel recovered"));中的=>是什么意思,该怎么处理
- zigbee 动态修改PANID 和 channel,该如何解决
- zigbee 动态批改PANID 和 channel
- 请教哪位高手知道无线AP频繁丢包 Channel Utilization在50左右
- 交换机自动重启!提示 Crossbar tx dma channel is blocked是什么有关问题啊多谢
- channel-group 零 unframed 这句命令是什么意思
- Apache报“ Memory allocation failed `Not enough space”,该怎么解决
- LCDS & BlazeDS 中 Channel 的配备选项
- 通道(Channel)
- 创办数据库实例报错:ORA-03113:end-of-file on communication channel
- ORA-03113: end-of-file on communication channel
- Android Developer:Allocation Tracker演练
- Dispatcher.BeginInvoke(() => UpdateStatus("Channel recovered"));中的=>是什么意思解决办法
- andriod studio,build tools(preview,channel)找不到。解决思路
- 求高手解决,v地图 allocation for size 8192 failed: use vmalloc=<size> to increase size
- Apache报“ Memory allocation failed `Not enough space”,该怎么解决
- channel-group 0 unframed 这句命令是什么意思?解决办法
- channel-group 0 unframed 这句命令是什么意思?解决思路
- Io 错误: End of TNS data channel; nested exception is java.sql.SQLException: Io
- 知识分享之Golang——在Golang中管道(channel)的使用
- kotlin--Channel、多路复用、并发安全
- zookeepr 遇坑解决Cannot open channel to X at election address Connection refused
- range遍历 channel 的小坑
- vue打包内存溢出解决方案 FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed
- ERROR 1129 (HY000): Host ‘192.168.0.1‘ is blocked because of many connection errors; unblock with ‘m
- Native memory allocation (malloc) failed to allocate 2863661056 bytes for committing reserved memory
- ssl.SSLError: [SSL: SSLV3_ALERT_HANDSHAKE_FAILURE] sslv3 alert handshake failure (_ssl.c:1129)
- Enabling Strong Privacy Preservation and Accurate Task Allocation for Mobile Crowdsensing
- Expected more than 1 value per channel when training, got input size torch.Size......