- Problem Description
Tahir and Mamta are woking in a project in TCS. Tahir being a problem solver came up with an interesting problem for his friend Mamta.
Problem consists of a string of length N and contains only small case alphabets.
It will be followed by Q queries, in which each query will contain an integer P (1<=P<=N) denoting a position within the string.
Mamta's task is to find the alphabet present at that location and determine the number of occurrence of same alphabet preceding the g
location P.
Mamta is busy with her office work. Therefore, she asked you to help her.
Constraints
1<= N<= 500000
S consisting of small case alphabets
1 <= Q<= 10000
1<= P <=N
- Input Format
First line contains an integer N, denoting the length of string.
Second line contains string S itself consists of small case alphabets only ('a' - 'z).
Third line contains an integer Q denoting number of queries that will be asked.
Next Q lines contains an integer P (1 <= P <= N) for which you need to find the number occurrence of character present at the Pth locatio
preceeding P.
- Output
For each query, print an integer denoting the answer on single line.
Answers
Answered by
0
Answer:
class solve
{
public static void main(String args[])
{
Scanner sc= new Scanner(System . in);
int arr [ ];
System . out . println("Enter the length of string");
int len=sc . nextInt();
arr =new int [ len ];
System . out . println("Enter the string");
string str=sc . next();
System . out . println("Enter number of queries to be made");
int q=sc . nextInt();
for ( int i = 0; i< q; i++)
{
int count =0;
System . out . println( "Enter the query" );
int p=sc . nextInt();
for (int j=0; j<p-1 ; j++)
{
if( str . charAt ( j ) = = str . charAt ( p-1 ) )
{
count + + ;
}
}
arr [ i ] = count;
}
for ( int i= 0; i< q; i++)
{
System . out . println (arr [ i ]);
}
}
}
Similar questions
Hindi,
6 months ago
Math,
1 year ago
Computer Science,
1 year ago
Social Sciences,
1 year ago
Science,
1 year ago
English,
1 year ago