Ada Programming

A cell phone company is continually building and leasing communication towers. Each tower has a one-way communcation link to a least one other tower. The input to the program is essentially a list of pairs of tower names. Each pair will appear on a single line and will contain distinct names. Some pairs represent one-way communcation links between towers, and other pairs represent queries. Links and queries may be interspersed.

All the communication links of the system are added one link at a time. Here is an example of a link:

Tower_A Tower_B.

A link is terminated by a period.

A query asks if a communcation link is possible from one tower to another by any combination of one-way links. If another link is added to the system later in the input, then the answer to the same query may be different. In the output, a plus sign (+) represents an affirmative answer; a minus sign (-) says there is no such link.

Links are distinguished from queries by ending in a question mark and not a period.

Sample Input and Output

The program should read from the standard input and and write to the standard output. For each query in the input there should be exactly one line of output. If the query is true (there is a communication channel through the network), the output line should begin with a plus sign (+); otherwise with a minus sign (-). The rest of the output line repeats the towers in the query.

For the following input:

Tower_A Tower_B.

Tower_B Tower_C .

Tower_A Tower_C? # A query

Tower_B Tower_D.

Tower_A Tower_D ? # Another query

Tower_F Tower_E.

Tower_D Tower_B ? # A third query

xxxx yyyy? # Unknown tower names

the output should be

+ Tower_A => Tower_C

+ Tower_A => Tower_D

- Tower_D => Tower_B

- xxxx => yyyy

The names of the towers will contain only the characters [a-zA-Z_0-9], in particular they will have no spaces in them. Names will have at least 1 character and no more than 50 characters. Furthermore the capitialization of the names is significant. That is, WestMelbourneTower is not to be considered the same tower as wESTMeLbOuRnEtOwEr. Characters, if any, after the period (.) or question mark (?) on a line are to be ignored. No line will will contain more than 150 characters.

Habilidades: Programação C, Java, PLC & SCADA

Veja mais: standard programming, rest programming, programming question in c, programming plus, pair programming, pair line, network programming in java, java network programming, c programming input output, c plus network, channel 7 programming, cell phone programming, ada programming, channel communication, ada, java communication program, java rest example, java single sign, cell java, sample java system, program cell phone java, list cell phone names, java system sample, cell tower, cell towers

Acerca do Empregador:
( 14 comentários ) Melbourne, United States

ID do Projeto: #5082057

Concedido a:


This project involves an implementation of a graph structure and a search algorithm, like BFS. I can implement this in Java or C++ in 1 day.

$30 USD em 1 dia
(1 Comentário)

3 freelancers are bidding on average $28 for this job


Hi I am a Computer Engineer and I have 1 year experience in JAVA I am also good at Data structure and Algorithm Please check my current project in my profile I can do your work very efficiently and quickly Thank Mais

$30 USD em 1 dia
(6 Comentários)

I am a software engineer. IIT delhi graduate in Computer Science. I am very good in java and algorithms.

$25 USD em 1 dia
(0 Comentários)