1 implement the tronomino tiling algorithm your program

Assignment Help C/C++ Programming
Reference no: EM13363475

1. Implement the tronomino tiling algorithm. Your program should take an arbitrary input positive integer k in the Linux command line and generate a 2k * 2k board. Randomly create one rectangular hole on the board and solve the tronomino tiling problem for this board. If a square on the board is occupied by a square of a tronomino tile, print "O". If it is a hole instead, print "X". Thus, your output should look like as the following, if there is a hole is at the intersection of the first row and second column. (To print the output, assume 1 ≤ k ≤ 6.)

 

| O | X | O | ............| O |

| O | O | O | ............ | O |

...............................

...............................

...............................

| O | O | O | ............ | O |

 

Make sure your program correctly implements the tronomino tiling algorithm with O(n2) time complexity (the divide and conquer algorithm described in Chapter 5); that is, there must be only one hole on the board and each of all the remaining 2k * 2k -1 squares on the board must be covered by exactly one square of one tronomino tile. No credit will be given if the algorithm is incorrectly implemented, the time complexity of your program is higher than O(n2), or your program only works for specific k values.  Save your source code in a file and name the file as yourlastname_pa2_tro.cpp.

2.      Implement the longest common subsequence (LCS) algorithm using the dynamic programming method that was discussed in class.  (No credit will be given if you implement a brute force algorithm, which does exhaustive comparisons between two input strings, or any other algorithm unless you prove your algorithm is correct and more efficient than the LCS algorithm described in Chapter 7.) Save your source code in a file and name the file as yourlastname_pa2_lcs.cpp.

Make sure that your program can take any two input strings in the Linux command line and print the LCS found between the two input strings. (Assume that a string consists of at most 100 alphabetic characters.) For example, student Smith types "smith_pa1_lcs abc afgbhcd" in the command line to find the LCS between string "abc" and string "afgbhcd".  Again, your program should work for arbitrary two input strings. No credit will be given, if your program only works for some specific strings, but fails to find the LCS for other strings.

3.      Implement Strassen's matrix multiplication algorithm. Your program should take an input variable n (=2k where k is a positive integer) in the Linux command line and generate two n*n random integer matrices, A and B. Compute A*B using Strassen's algorithm and compare the result to the result produced by the standard matrix multiplication algorithm with O(n3) time complexity. Print the results, if correct. (If incorrect results are produced, no credit will be given. Your program should work for any matrices. If it works for specific matrices but doesn't work for other matrices, no credit will be given.) Finally, save your source code in a file and name the file as yourlastname_pa2_strassen.cpp.

All programming must be done using C or C++ in Linux where your code will be tested.  Create a tar file that includes (1) three source code files and (2) a readme file that clearly describes how to compile and run your code.

Reference no: EM13363475

Questions Cloud

Project management questionsthroughout a project the cost : project management questionsthroughout a project the cost performance index has decreased from 1.3 to 0.8. the cost
Calculation of net cash flowgarfield inc is considering a : calculation of net cash flowgarfield inc. is considering a thirteen year investment project with forecasted cash
Project managementa what is the definition of a project : project managementa. what is the definition of a project? what are some of the elements that differentiate a project
Expected benefits that are motivating the : expected benefits that are motivating the organizationbriefly explain the organization that is in need of the pool.
1 implement the tronomino tiling algorithm your program : 1. implement the tronomino tiling algorithm. your program should take an arbitrary input positive integer k in the
Mcgilla golf has decided to sell a new line of golf clubs : mcgilla golf has decided to sell a new line of golf clubs. the clubs will sell for 500 per set and have a variable cost
Project team structures1 what are the three project team : project team structures1. what are the three project team structures? what are some of the elements that differentiate
General project management vs rapid application : general project management vs. rapid application developmentscenarioyour organization has just completed the initiation
Project management questiontime identify the completion : project management questiontime identify the completion date of the project.budget list out the expenses and any other

Reviews

Write a Review

C/C++ Programming Questions & Answers

  Write a program that stimulates a bouncing ball

Write a program that stimulates a bouncing ball by computing its height in feet at each second as time passes on a simulated clock. At time zero, the ball begins at height zero.

  Multidimensional arrays

multidimensional arrays to life, let's consider a specific example: How can you visualize a 4-dimensional array? How can you give meaning to each dimension this array has? What kind of application would such an array be useful for?

  Define a base class to use for the entire program

Your company, Datamax, Inc., is in the process of automating its payroll systems. Your manager has asked you to create a program that calculates overtime pay for all employees.

  Program to generate 100,000 prime numbers

Write a POSIX C/C++ program to generate 100,000 prime numbers. Assume that the program will be run on a computer with 5 CPUs and that your goal is to have this program finish as quickly as possible.

  Program that takes a number between

Write a program that takes a number between -121 and 121 and output that number in the format of power of 3 (1,3,9,27)example:13 = 9+3+1

  Write a function that computes length of a character string

Write a function that computes the length of a character string (i.e. write your own implementation of the strlen function.

  Technical paper: memory management

Technical Paper: Memory Management, The intent of this paper is to provide you with an in depth knowledge of how memory is used in executing, your programs and its critical support for applications.

  Write a class dataset

Write a class DataSet that computes the largest and smallest values in a sequence of numbers.

  Display the list of all car record

Sales and Profits - show car model, the number of car in stock, car sold, unit cost, selling price and the profit for each car and the total profit for all cars.

  A palindrome is a number

A palindrome is a number or text phrase that reads the same backward as forward. For example, each of the following five-digit integers is a palindrome: 12321, 55555, 34543 and 11611. Write a program that reads in a five-digit integer and determines ..

  Generate a two-dimensional array

Generate a two-dimensional array of integers of 10 rows by 10 columns that contains 100 random numbers between 0 and 9. Print out the array (well formatted) and do the following computations

  Modify the program in 6a so that, in addition to the cents

Modify the program in 6a so that, in addition to the cents, the user enters the denomination of the coin to which to convert the pennies, such as 5 for nickles or 25 for quarters.

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