write C++ for following question., Computer Engineering

Assignment Help:
We are planning an orienteering game.
The aim of this game is to arrive at the goal (G) from the start (S) with the shortest distance.
However, the players have to pass all the checkpoints (@) on the map.
An orienteering map is to be given in the following format.

########
#@....G#
##.##@##
#[email protected]#
#@.....#
########

In this problem, an orienteering map is to be given.
Calculate the minimum distance from the start to the goal with passing all the checkpoints

-Specification
* A map consists of 5 characters as following.
You can assume that the map does not contain any invalid characters and
the map has exactly one start symbol ''S'' and exactly one goal symbol ''G''.
* ''S'' means the orienteering start.
* ''G'' means the orienteering goal.
* ''@'' means an orienteering checkpoint.
* ''.'' means an opened-block that players can pass.
* ''#'' means a closed-block that players cannot pass.
* It is allowed to move only by one step vertically or horizontally (up, down, left, or right) to the
next block.
Other types of movements, such as moving diagonally (left up, right up, left down and right down)
and skipping one or more blocks, are NOT permitted.
* You MUST NOT get out of the map.
* Distance is to be defined as the number of movements to the different blocks.
* You CAN pass opened-blocks, checkpoints, the start, and the goal more than once if necessary
* You can assume that parameters satisfy following conditions.
* 1 <= width <= 100
* 1 <= height <= 100
* The maximum number of checkpoints is 18.
* Return -1 if given arguments do not satisfy specifications, or players cannot arrive at the goal from the start by passing all the checkpoints.

Input
The input is to be given in the following format, from the standard input.
W H
Row1
Row2
...
RowH
The first row is to describe the width and the height of the orienteering map, sectioned by a space.
From the second row, map information is to be given for exactly the same number of rows as the height.
Each row contains exactly the same number of letters as the width.
See “Specification” for details of the symbols contained in the map.

Output
Output into the standard output, and put a return.

Related Discussions:- write C++ for following question.

Physical characteristics and access mode of disk drive, Q. Physical charact...

Q. Physical characteristics and access mode of disk drive? Access Time: Access time is time needed between requests made for a read or write operation until the time data are

Find the nyquist rate, Find the Nyquist rate for the following signals: (a)...

Find the Nyquist rate for the following signals: (a) x(t) = 5 sin 3000πt cos 4000πt (b) A binary channel with bit rate 36000 bps is available for PCM voice transmission. Fi

Connector of conventional keyboard, 5-pin DIN connector: It is the conn...

5-pin DIN connector: It is the connector of conventional keyboard which have 5 pins (2 IN, 2 OUT and one ground pin) used for transfer and synchronization.

Role of bitmap indexes to solve aggregation problems, Describe about the ro...

Describe about the role of bitmap indexes to solve aggregation problems? Ans) Bitmaps are very useful in begin schema to join large databases to small databases. Answer queries

Xor gate, The XOR gate. The exclusive OR or XOR gate is similar to a tw...

The XOR gate. The exclusive OR or XOR gate is similar to a two input OR gate. The output of an XOR gate is logic 1 only when one input or the other input is high and is 0 when

Explain sequential sharing, Explain Sequential sharing. Sequential s...

Explain Sequential sharing. Sequential sharing: In this technique of sharing, a file can be shared through only one program at a time, it is file accesses by P1 and P2 are

Assignment, what is an interface and perpheral device

what is an interface and perpheral device

What is the purpose of the cpu, Problem 1 a) What is the purpose of th...

Problem 1 a) What is the purpose of the CPU and what can the CPU perform. b) Name the two most common types of software and briefly illustrate each one. c) The CPU con

stores on each line a part number, Make a file "parts_inv.dat" that stores...

Make a file "parts_inv.dat" that stores on each line a part number, cost, and quantity in inventory, e.g.: 123 5.99 52 456 3.97 100 333 2.22 567 Use fscanf to read this infor

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd