Question

Alternating Disks

You have a row of 2n disks of two colors, n dark and n light.
They alternate: dark, light, dark, light, and so on. You want to get all the dark
disks to the right-hand end, and all the light disks to the left-hand end. The
only moves you are allowed to make are those that interchange the positions
of two neighboring disks. Design an algorithm for solving this puzzle and determine the number of moves it takes.
0 0
Add a comment Improve this question Transcribed image text
Answer #1


ALGORITHM
DiskColors( )

//Input: two colors dark and light placed in alternatively.

// Output: Move dark disks to right hand side and light disks to left hand side.

Consider light disk as 0 and dark disk as 1.

First compare first two disks,

if i < 1 swap it with each of the light disks to the left handside.

else swap it with each of the dark disks to the right hand side.

Repeat this process until i ≤ n.

The total number of moves it made is

answered by: Javay
Add a comment
Know the answer?
Add Answer to:
Alternating Disks
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Assignment 2 In this assignment, you will write two short programs to solve problems using recursion....

    Assignment 2 In this assignment, you will write two short programs to solve problems using recursion. 1. Initial Setup Log in to Unix. Run the setup script for Assignment 2 by typing: setup 2 2. Towers of Hanoi Legend has it that in a temple in the Far East, priests are attempting to move a stack of disks from one peg to another. The initial stack had 64 disks threaded onto one peg and arranged from bottom to top by...

  • John Smith teaches seven and eight year olds. Today is school picture day and everybody, including...

    John Smith teaches seven and eight year olds. Today is school picture day and everybody, including the teacher, has lined up in a single line for the class picture. Initially everyone has lined up in a random order. The photographer wants the following arrangement from left to right: first, all of the seven year olds, in order of increasing height. Next, Mr. Smith in the middle. Last, the eight year olds in decreasing order of height. The only adjustment allowed...

  • In this puzzle, you can bounce between the two 3’s, but you cannot reach any other...

    In this puzzle, you can bounce between the two 3’s, but you cannot reach any other squares. Write a function bool Solvable(int start, int[] squares) that takes a starting position of the marker along with the array of squares. The function should return true if it is possible to solve the puzzle from the starting configuration, and false if it is impossible. You may assume all the integers in the array are positive except for the last entry, the goal...

  • Write a class named FBoard for playing a game... PLEASE USE C++ PLEASE DO NOT USE "THIS -->". NOT ALLOWED PLE...

    Write a class named FBoard for playing a game... PLEASE USE C++ PLEASE DO NOT USE "THIS -->". NOT ALLOWED PLEASE PROVIDE COMMENTS AND OUTPUT! Write a class named FBoard for playing a game, where player x is trying to get her piece to row 7 and player o is trying to make it so player x doesn't have any legal moves. It should have: An 8x8 array of char for tracking the positions of the pieces. A data member...

  • Designing a Traffic Light Controller [50 pts] [Your originality, thinking method and execution would be graded]...

    Designing a Traffic Light Controller [50 pts] [Your originality, thinking method and execution would be graded] In Gotham city, traffic lights have three outputs as Red (R), Yellow (Y) or Green (G). Let's assume you're given a microchip with clock input 0.2 Hz. As you know.cars can travel when the light is Green and should not pass the traffic light when the light is Yellow or Red. We are asked to design the traffic light controller in the busiest road...

  • In C++. Write a class named FBoard for playing a game, where player x is trying to get her piece to row 7 and player o i...

    In C++. Write a class named FBoard for playing a game, where player x is trying to get her piece to row 7 and player o is trying to make it so player x doesn't have any legal moves. It should have: An 8x8 array of char for tracking the positions of the pieces. A data member called gameState that holds one of the following values: X_WON, O_WON, or UNFINISHED - use an enum type for this, not string (the...

  • Write a JAVA program to solve a sudoku! Given a partially filled 9×9 2D array ‘grid[9][9]’,...

    Write a JAVA program to solve a sudoku! Given a partially filled 9×9 2D array ‘grid[9][9]’, the goal is to assign digits (from 1 to 9) to the empty cells so that every row, column, and subgrid of size 3×3 contains exactly one instance of the digits from 1 to 9. I have posted 3 input files: sudoku1.txt, sudoku2.txt and sudoku3.txt Problem Analysis & Design - Think about how you will need to solve this problem. You should do an...

  • Program Purpose In this program you will demonstrate your knowledge in programming OOP concepts, such as classes, encapsulation, and procedural programming concepts such as lınked lists, dynamic me...

    Program Purpose In this program you will demonstrate your knowledge in programming OOP concepts, such as classes, encapsulation, and procedural programming concepts such as lınked lists, dynamic memory allocation, pointers, recursion, and debugging Mandatory Instructions Develop a C++ object oriented solution to the Towers of Hanoi puzzle. Your solution will involve designing two classes one to represent individual Disk and another to represent the TowersOfHanoi game. TowersOfHanoi class will implement the game with three linked lists representing disks on each...

  • Instructions: All answers must be proved: it is not sufficient to simply state the answer. All...

    Instructions: All answers must be proved: it is not sufficient to simply state the answer. All answers must be written in your own words. Treat single arithmetic operations (addition, subtraction, multiplication, and division) as constant time operations. Note: I am posting this question second time and I did not satisy from first one. Please answer me clearly according to statement. Thank You! Problem: Suppose you have a set of N project managers and 2N software engineers. Each project manager is...

  • CMPS 12B Introduction to Data Structures Programming Assignment 2 In this project, you will write...

    can i get some help with this program CMPS 12B Introduction to Data Structures Programming Assignment 2 In this project, you will write a Java program that uses recursion to find all solutions to the n-Queens problem, for 1 Sns 15. (Students who took CMPS 12A from me worked on an iterative, non-recursive approach to this same problem. You can see it at https://classes.soe.ucsc.edu/cmps012a/Spring l8/pa5.pdf.) Begin by reading the Wikipcdia article on the Eight Queens puzzle at: http://en.wikipedia.org/wiki/Eight queens_puzzle In...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT