Padovan string, Programming Languages

Assignment Help:

Padovan String

Problem Description


A Padovan string P(n) for a natural number n is defined as:

P(0) = 'X'

P(1) = 'Y'

P(2) = 'Z'

P(n) = P(n-2) + P(n-3), n>2
where + denotes string concatenation.
For a string of the characters 'X' , 'Y' and 'Z' only, and given value of n, write a program that counts the number of occurrences of the string in the n-th Padovan string P(n).


An example is given below.

For n = 6 and the string ZY, the program should count the occurrences of ZY in P(6).

P(0) = 'X'

P(1) = 'Y'

P(2) = 'Z'

P(n) = P(n-2) + P(n-3), n>2


P(3) = P(1)+P(0)

P(3) = YX


P(4) = P(2)+P(1)

P(4) = ZY


P(5) = P(3)+P(2)

P(5) = YXZ


P(6) = P(4)+P(3)

P(6) = ZYYX

So, the number of occurrences of the string ZY in P(6) is 1.

Instruction to work with Open PBT Client:

  1. Specify the work directory path in the 'Work directory Path' field. The path should correspond to your solution Work directory.
  2. Download the support files by clicking the Get Dev Files.
  3. You will find the problem directories containing:
    • problem.h file
    • problem.c file

in your project directory.

  1. Code the solution in .c file inside the problem directory
  2. All required files will be downloaded to your work directory. Creating additional files is strongly discouraged.

Step 1:

In your Solution File:

  • Implement your logic in function int stringOccurrences(int n, char* str)
  • int   n :n is an integer represents n(th) for which full main string has to formed, from which occurrence of string str has to be found.
  • char*    str :str is a string represents sub string whose occurrence has to be found in the main string.
  • You can create more functions if required, but those functions should be in the same file.

 

Step 2:

In your solution keep in mind the following constraints:.

  1. In this problem you have to write a program that counts the number of occurrences of the string in the n-th Padovan string P(n).
  2. Padovan formula is P(n) = P(n-2) + P(n-3) where n>2 and n is the integer.
  3. In the above Padovan formula + sign means string concatenation.
  4. For the Padovan formula value of P(0),P(1) and P(2) is given. You have to use those value only.
  5. n should not be greater than 40 otherwise return -1
  6. string str should be consist of only X,Y and Z in upper case otherwise return -1

The Prototype of the function is

int stringOccurrences(int n, char* str)
This function takes following arguments.

  • n is the value for which full main string has to formed, from which occurrence of string str has to be found.
  • str represents sub string whose occurrence has to be found in the main string.
  • This function returns a number of occurrence of string str in the main string.

The constraints are:

  1. n should not be greater than 40 otherwise return -1
  2. string str should be consist of only X,Y and Z in upper case otherwise return -1

Example 1

Input


int n = 6
string str = ZY

Output


1

Explanation : This question is explained in problem description.

Example 2

Input


int n = 6
String str = ZYmm

Output


-1

Explanation :
String str is containing character other than X, Z and Y.

Example 3

Input


int n = 8
String str = XZ

Output


1

For C solutions

Header File

:

padovanstring.h

Function Name

:

int stringOccurrences(int n, char* str)

File Name

:

padovanstring.c

For C++ solutions

Header File

:

padovanstring.h

Class Name

:

PadovanString

Function Name

:

int stringOccurrences(int n, char* str)

File Name

:

padovanstring.c

General Instructions

    *

The file / class names, functions, method signatures, header files are to be used as mentioned in the problem statement. Do not use your own names or change the method signatures and fields. You can add any number of additional methods.

    *

For C solutions, change the value of "C_OR_CPP" macro in header file as 1 and for C++ solutions change the value as 2.

    *

In case of iostream.h specify as iostream only.

    *

Command line options for the main() function are not supported currently.


Related Discussions:- Padovan string

Code html and xml, Topic Develop a Web site that will provide informat...

Topic Develop a Web site that will provide information about your organization. The Web site will need to have a user-friendly interface for users to enter their information;

Visual Basic 2010 Karate Payments MDI Application, The following are requir...

The following are required for this lesson: Complete the Project "Adding New Payments," which is the Karate Payments that includes the Adding New Payments, Deleting Payments,

MATLAB, Who can help with MATLAB?

Who can help with MATLAB?

Use loop invariant to prove the working of the program, 1.  Use mathematica...

1.  Use mathematical induction to prove Whenever n is a positive integer. 2.  Use loop invariant to prove that the program for computing the sum of 1,...,n is correct.

Pros and cons of Assembly language, What are the main pros and cons of asse...

What are the main pros and cons of assembly programming language?

Use case diagram incremental development, Introduction This assignment ...

Introduction This assignment builds on your application, produced in Assignment 1, which holds a list of cabins, which can be either read in from a text file or just hard coded

We need help for build a price quote generator, We need help for build a Pr...

We need help for build a Price Quote Generator I am interested in two things (A) a web based system that will allow a user to enter the parameters of their contests (there are o

Cookies management with perl, One of the main strengths of the Perl program...

One of the main strengths of the Perl programming language are its powerful text manipulation features. In this assignment, you will put them to  use for writing a Perl program tha

Network security, Term project (you should code a function), demonstrate it...

Term project (you should code a function), demonstrate it to the class and a very breief report (one or two pages) describing what you did. You determine your project (could be imp

Fortran function for find and print out all prime number, Write a Fortran L...

Write a Fortran LOGICAL FUNCTION, called "is_prime", which determines if a given integer value is a prime number or not (A prime number is a natural number which has only two disti

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