Padovan string , Computer Engineering

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).

 

program in java

// aakash , suraj , prem sasi kumar kamaraj college
program 1 :

package test.padovanstring;

public class PadovanString {
    public int stringOccurrences(int n, String str){
   
    if(n >= 40)
    return -1;
    if(str.replaceAll("X|Y|Z","").length()>0)
    return -1;
    String res=pad(n);
    return(res.length() - res.replaceAll(str,"").length())/(str.length());
    }
public String pad(int n){
    if(n == 0) return "X";
    if(n == 1) return "Y";
    if(n == 2) return "Z";
    else return pad(n-2) + pad(n-3);
   
}
    public static void main(String []args)
    {
        PadovanString p = new PadovanString();
        System.out.println(p.stringOccurrences(21,"YZ"));
    }
}

 

 

 

Program set 2 :

import java.util.Scanner;

import java.util.ArrayList;

 

public class PadovanSeries

{

    public static void main(String[] arg)

    {

        Scanner read = new Scanner(System.in);

        System.out.println("Enter starting no. : ");

        int start = read.nextInt();

        System.out.println("Enter ending no. : ");

        int end = read.nextInt();

        int[] ans = getSeries(start, end);

        System.out.println("Padovan series : ");

        for (int a : ans)

            System.out.print(a + " ");

    }

 

    public static int[] getSeries(int s, int e)

    {

        ArrayList list = new ArrayList();

        int i, j = 0;

        for (i = s; i <= e; i++, j++)

            list.add(getPadovan(i));

        int[] ans = new int[j];

        for (i = 0; i < j; i++)

            ans[i] = list.get(i);

        return ans;

    }

 

    public static int getPadovan(int p)

    {

        if (p == 0 || p == 1 || p == 2)

            return 1;

        return (getPadovan(p - 2) + getPadovan(p - 3));

    }

}

 

Padova

Posted Date: 9/3/2012 3:39:21 AM | Location : United States







Related Discussions:- Padovan string , Assignment Help, Ask Question on Padovan string , Get Answer, Expert's Help, Padovan string Discussions

Write discussion on Padovan string
Your posts are moderated
Related Questions
For the circuit demonstrated below, what is the Maximum Frequency of Operation? Are there any hold time violations for FF2? When yes, how do you modify the circuit to ignore them?

Question 1 What is modulation? Explain why is modulation required? 2 Briefly explain about ASK, FSK and PSK 3 Explain about the Nyquist Bandwidth and Nyquist Theorem 4

When web pages containing emails are sent out they are prefixed by MIME Header. Why? Primarily email consisted messages having simple text written into English and expressed in

Cache Misses Compulsory misses -  it is caused by initial access to a block that has never been in the cache (also called cold start misses Capacity miss - it is cause

What is schedulers?  A process migrates between the various scheduling queues throughout its life time. The OS must select processes from these queues in some fashion. This sel

Q. Compute Physical address of data byte? Offset of data byte = 0020h Value of data segment register (DS) = 3000h Physical address of data byte   This computation

Problem : (a) Show whether or not a standard format for representing data, such as XML, is needed. (b) Using an appropriate example, describe how data is organized in a dat

Divide (101110) 2   by (101) 2 Ans. Quotient is = -1001 Remainder is = -001

What Is The Difference Between ViewState and SessionState? View State persist the values of controls of certain page in the client (browser) when post back operation done. When

Discuss two main approaches to identify free memory area in a heap. Two popular systems to identify free memory areas as a result of allocation and de-allocations in a heap are