рдЕрдВрдХ # 34: рдЖрдИрдЯреА рдкреНрд░рд╢рд┐рдХреНрд╖рдг - рдкреНрд░рдореБрдЦ рдХрдВрдкрдирд┐рдпреЛрдВ рд╕реЗ рд╡рд░реНрддрдорд╛рди рдореБрджреНрджреЗ рдФрд░ рдЪреБрдиреМрддрд┐рдпрд╛рдВ

рдирдорд╕реНрдХрд╛рд░! рд╣рдордиреЗ рдлрд┐рд░ рд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдкреНрд░рдореБрдЦ рдЖрдИрдЯреА рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░реЛрдВ рд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рд╕рд╡рд╛рд▓реЛрдВ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЪрдпрди рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдпрд╛!



рдореБрджреНрджреЗ рд╣рд░ рд╣рдлреНрддреЗ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗ - рджреЗрдЦрддреЗ рд░рд╣реЗрдВ! рдХреЙрд▓рдо рднрд░реНрддреА рдПрдЬреЗрдВрд╕реА рд╕реНрдкрд╛рдЗрд╕ рдЖрдИрдЯреА рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИ ред

рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рд╣рдордиреЗ рднрд╛рд░рддреАрдп рдХрдВрдкрдиреА рд╕реНрдиреИрдкрдбреАрд▓ рдореЗрдВ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рд╕реЗ рдХрд╛рд░реНрдп рдПрдХрддреНрд░ рдХрд┐рдПред рд╡реИрд╕реЗ, рдкрд┐рдЫрд▓реЗ рдЕрдВрдХ рд╕реЗ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдЙрддреНрддрд░ рдкрд╣рд▓реЗ рд╣реА рдкреНрд░рдХрд╛рд╢рд┐рдд рд╣реЛ рдЪреБрдХреЗ рд╣реИрдВ ред

рдкреНрд░рд╢рди


1. рдХрд╛рд░ рдХрд╛ рдкрд╣рд┐рдпрд╛ рдкрд╣реЗрд▓реА
рдПрдХ рдХрд╛рд░ рдореЗрдВ 4 рдЯрд╛рдпрд░ рдФрд░ 1 рд╕реНрдкреЗрдпрд░ рдЯрд╛рдпрд░ рд╣реЛрддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдЯрд╛рдпрд░ рдкрд╣рдирдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдзрд┐рдХрддрдо 20000 рдореАрд▓ рдХреА рджреВрд░реА рддрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдирдпрд╛ рдЯрд╛рдпрд░ рдЦрд░реАрджрдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХрд╛рд░ рдХрд┐рддрдиреА рджреВрд░реА рддрдп рдХрд░ рд╕рдХрддреА рд╣реИ? рдЖрдкрдХреЛ рдХрдИ рдмрд╛рд░ (рдЕрддрд┐рд░рд┐рдХреНрдд рдЯрд╛рдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдЕрд╕реАрдорд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЯрд╛рдпрд░ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рддреА рд╣реИред

рд╕реНрдерд╛рдирд╛рдВрддрд░рдг
4 1 . 20000 , . , ? ( ) .

2. рдХрд╛рд░реНрдп рдкреВрд░рд╛ рдХрд░рдирд╛
рдПрдХ рдЖрджрдореА рдХреЛ рдПрдХ рдХрд╛рд░реНрдп рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд╣ рд╣рд░ рд░реЛрдЬ рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдп рдХреЛ рджреЛрдЧреБрдирд╛ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрджрдореА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рд░реНрдп 18 рджрд┐рдиреЛрдВ рдореЗрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрджрдореА рдХреЛ рдХрд╛рд░реНрдп рдХреЗ 25% рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдиреЗ рджрд┐рди рд▓рдЧрддреЗ рд╣реИрдВ?

рд╕реНрдерд╛рдирд╛рдВрддрд░рдг
. . 18 , , 25% ?

рдХрд╛рд░реНрдп


1. рдЕрдЧрд▓рд╛ рдЕрдзрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЕрдВрдХ
рдПрдХ рд╕рдВрдЦреНрдпрд╛ n рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╕рдмрд╕реЗ рдЫреЛрдЯреА рд╕рдВрдЦреНрдпрд╛ рдЬреНрдЮрд╛рдд рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ n рдХреЗ рд╕рдорд╛рди рдЕрдВрдХ рд╣реЛ рдФрд░ n рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛред рдпрджрд┐ n рдЕрдВрдХреЛрдВ рдХреЗ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдВрднрд╡ рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рддреЛ "рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ" рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред

рдЗрдирдкреБрдЯ: рдЗрдирдкреБрдЯ
рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ рдПрдХ рдкреВрд░реНрдгрд╛рдВрдХ T рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдкреНрд░рддреНрдпреЗрдХ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЗ рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ n рд╣реИ, n рд╕рдВрдЦреНрдпрд╛ рд╣реИред

рдЖрдЙрдЯрдкреБрдЯ:
рдЕрдВрдХреЛрдВ рдХреЗ рд╕рдорд╛рди рд╕реЗрдЯ рдХреЗ рд╕рд╛рде n рд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдпрджрд┐ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ рддреЛ рджреЛрд╣рд░реЗ рдЙрджреНрдзрд░рдг рдХреЗ рдмрд┐рдирд╛ "рд╕рдВрднрд╡ рдирд╣реАрдВ" рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред

рдмрд╛рдзрд╛рдПрдВ: рдЙрджрд╛рд╣рд░рдг: рдЗрдирдкреБрдЯ рдЖрдЙрдЯрдкреБрдЯ
1 тЙд T тЙд 100
1 тЙд n тЙд 100000




2
143
431



314
not possible

рд╕реНрдерд╛рдирд╛рдВрддрд░рдг
n, , , n, n. n тАФ , тАЬnot possibleтАЭ.

:
T, .
тАФ n. n тАФ .

:
, n, , , ┬лnot possible┬╗.

:
1 тЙд T тЙд 100
1 тЙд n тЙд 100000


:

2
143
431



314
not possible

2. рд╕рд┐рдХреНрдХрд╛ рдмрджрд▓реЗрдВ
Given a value N, find the number of ways to make change for N cents, if we have infinite supply of each of S = { S1, S2,тАж, Sm} valued coins. The order of coins doesnтАЩt matter. For example, for N = 4 and S = {1,2,3}, there are four solutions: {1,1,1,1},{1,1,2},{2,2},{1,3}. So output should be 4. For N = 10 and S = {2, 5, 3, 6}, there are five solutions: {2,2,2,2,2}, {2,2,3,3}, {2,2,6}, {2,3,5} and {5,5}. So the output should be 5.

Input:
The first line contains an integer 'T' denoting the total number of test cases. In each test cases, the first line contains an integer 'M' denoting the size of array. The second line contains M space-separated integers A1, A2, ..., AN denoting the elements of the array. The third line contains an integer 'N' denoting the cents.

Output:
рдПрди рд╕реЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рддрд░реАрдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред

рдмрд╛рдзрд╛рдУрдВ: рдЙрджрд╛рд╣рд░рдг: рдЗрдирдкреБрдЯ: рдЖрдЙрдЯрдкреБрдЯ: рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг: рдЯреЗрд╕реНрдЯрдХреЗрд╕ 1: possiblities рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ: {1, 1, 1, 1}, {1, 1, 2}, {1, 3}, {2, 2}ред
1 тЙд T тЙд 50
1 тЙд N тЙд 300
1 тЙд A[i] тЙд 300




2
3
1 2 3
4
4
2 5 3 6
10



4
5




рд╕реНрдерд╛рдирд╛рдВрддрд░рдг
N, N, S = { S1, S2, ...,., Sm}. . , N = 4 S = {1,2,3} : {1,1,1,1},{1,1,2},{2,2},{1,3}. 4. N = 10 S = {2, 5, 3, 6}, : {2,2,2,2,2}, {2,2,3,3}, {2,2,6}, {2,3,5} {5,5}. 5.

:
'T', . 'M', . M , A1, A2,..., . 'N', .

:
N.

:
1 тЙд T тЙд 50
1 тЙд N тЙд 300
1 тЙд A [i] тЙд 300


:
:

2
3
1 2 3
4
4
2 5 3 6
10


:
4
5


:
1: : {1, 1, 1, 1}, {1, 1, 2}, {1, 3}, {2, 2}.

3. рдлреЛрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛
рд╕рдВрдкрд░реНрдХреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдЬреЛ рдПрдХ рдлреЛрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдФрд░ рдПрдХ рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ str рдореЗрдВ рдореМрдЬреВрдж рд╣реИред рдХрд╛рд░реНрдп рдлрд╝реЛрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХреНрд╡реЗрд░реА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╣реИред рдХреНрд╡реЗрд░реА рд╕реНрдЯреНрд░рд┐рдВрдЧ str рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрд╕рд░реНрдЧ p (рдпрд╛рдиреА рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ 1 рд╕реЗ рд╢реАрд░реНрд╖ рд▓рдВрдмрд╛рдИ рддрдХ) рдХреЗ рд▓рд┐рдП рдПрдХ рдЦреЛрдЬ рдХреНрд╡реЗрд░реА рдЪрд▓рд╛рдПрдБ, рдЬреЛ рд╕рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╕рдВрдкрд░реНрдХреЛрдВ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рд╣рдорд╛рд░реЗ рдХреНрд╡реЗрд░реА (p) рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдЙрдкрд╕рд░реНрдЧ рд╣реИ рдЬреЛ рд▓реЗрдХреНрд╕реЛрдЧреНрд░рд╛рдлрд╝рд┐рдХ рдХреНрд░рдо рдореЗрдВ рд╣реИред рдХреГрдкрдпрд╛ рдмреЗрд╣рддрд░ рд╕рдордЭ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рднрд╛рдЧ рджреЗрдЦреЗрдВред

рдиреЛрдЯ: рдпрджрд┐ рдХреНрд╡реЗрд░реА рдФрд░ рд╕рдВрдкрд░реНрдХреЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдИ рдореЗрд▓ рдирд╣реАрдВ рд╣реИ, рддреЛ "0" рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред

рдЗрдирдкреБрдЯ:
The first line of input contains an integer T denoting the number of test cases. Then T test cases follow. Each test case contains three lines. First line of each test case contains N i.e., number of contacts. Second line contains space separated all the contacts in the form of string. And third line contains query string.

Output:
For each test case, print each query result in new line. If there is no match between query and contacts, print ┬л0┬╗.

Constraints:
1<=T<=100
1<=N<=50
1<=|contact[i].length|<=50
1<=|query length|<=6


Example:
Input:

1
3
spiceit spcicecite spiiceti
spicpt


Output:
spiceit spcicecite spiiceti
spiceit spcicecite spiiceti
spiceit spiiceti
spiceit
0
0


Explanation:
By running the query on contact list, we get,
Suggestions based on "s" are:
spiceit spcicecite spiiceti
Suggestions based on "sp" are:
spiceit spcicecite spiiceti
Suggestions based on "spi" are:
spiceit spiiceti
Suggestions based on "spic" are:
spiceit
No Results Found for ┬лspicp┬╗, So print ┬л0┬╗.
No Results Found for ┬лspicpt┬╗, So print ┬л0┬╗.

, str. , . p str (. . 1 str), , , (p) . , .

: , ┬л0┬╗.

:
T, . T . . N, . . . , . .

:
. , ┬л0┬╗.

:
1<=T<=100
1<=N<=50
1<=|contact[i].length|<=50
1<=| |<=6


:
:

1
3
spiceit spcicecite spiiceti
spicpt


:
spiceit spcicecite spiiceti
spiceit spcicecite spiiceti
spiceit spiiceti
spiceit
0
0


:
, ,
"s", :
spiceit spcicecite spiiceti
"sp", :
spiceit spcicecite spiiceti
"spi", :
spiceit spiiceti
"spic", :
spiceit
┬лspicp┬╗ , ┬л0┬╗.
┬лspicpt┬╗ , ┬л0┬╗.



1
: 25000 .
: 4 , . . 5000, 5000 .

A, B, C D, тАФ S.

5000 : A S. (A, B, C, D, S): 15000, 15000, 15000, 15000, 20000.
10000 : A B S. (A, B, C, D, S): 15000, 10000, 10000, 10000, 15000.
15000 : B C S. (A, B, C, D, S): 10000, 10000, 5000, 5000, 10000.
20000 : C D S. (A, B, C, D, S): 5000, 5000, 5000, 0, 5000.
25000 : .

2
: 16
100% = 18
,
50% = 17
25% = 16 .

1
import java.io.*;

class GFG {
	public static void main (String[] args) {
		//code
		GFG gfg = new GFG();
		int testCases, n, i;
		String a;
		char[] c;
		Scanner sc = new Scanner(System.in);
		
		testCases = sc.nextInt();
		
		for(int t = 0; t < testCases; t++)
		{
		    a = sc.next();
		    c = a.toCharArray();
		    i = a.length() - 1;
		    
		    while(i > 0)
		    {
		        if(c[i-1] >= c[i])
		        {
		            i--;
		        }
		        else
		        {
		            break;
		        }
		    }
		    
		    if(i == 0)
		    {
		        System.out.println("not possible");
		    }
		    else
		    {
		        i--;
		        
		    
		        int j = i + 1;
		    
		        for(int k = i + 2; k < a.length(); k++)
		        {
		            if(c[k] > c[i])
		            {
		                j = k;
		            }
		        }
		        
		        char v = c[i];
		        c[i] = c[j];
		        c[j] = v;
		        i++;
		        
		        Arrays.sort(c, i, c.length);
		    
		    
		    
		    for(int k = 0; k < a.length(); k++)
		    {
		        System.out.print(c[k]);
		    }
		    System.out.println();		
		        
		    }
		}
		
	}
}

2
for _ in range(int(input())):
    n,ar,m=int(input()),list(map(int,input().split())),int(input())
    dp=[0]*(m+1)
    dp[0]=1
    for i in range(n):
        for j in range(ar[i],m+1):
            dp[j]+=dp[j-ar[i]]
    print(dp[m]) 

3
, TRIE.
, 0 1..n
.
import java.util.*;
import java.lang.*;
import java.io.*;
class trie
{
  HashMap<Character,trie> child;;
  boolean isEnd;
  trie()
  {
    isEnd=false;
    child=new HashMap<>();
  }
  void add(String a,trie root)
  {
  trie cur=root;
  for (int i=0;i<a.length() ;++i ) {
    if(cur.child.containsKey(a.charAt(i)))
    cur=cur.child.get(a.charAt(i));
    else
    {cur.child.put(a.charAt(i),new trie());
      cur=cur.child.get(a.charAt(i));
    }
  }
  cur.isEnd=true;
  }
   void search(String a,trie root)
   {
     trie cur=root;
     for (int i=0; i<a.length();++i ) {
       char t=a.charAt(i);
       trie node=cur.child.get(t);
       if(node==null)
       {System.out.print("0");
     return;}

     cur=node;
     }
     print(cur,a);
   }
   void print(trie root,String prefix)
   {
       if(root.isEnd)
       {System.out.print(prefix+" ");
       }
     for(char i='a';i<='z';++i)
     {
       trie node=root.child.get(i);
       
       if(node!=null)
       print(node,prefix+i);
     }
   }
}
class phoneDict
 {
  static trie root;
  public static void fn(String a[],int n,String q)
  {
    for (String t :a ) {
      root.add(t,root);
    }
    for(int i=1;i<=q.length();++i)
    {root.search(q.substring(0,i),root);
      System.out.println();
    }
  }
 public static void main (String[] args)
  {
 Scanner ab=new Scanner(System.in);
 int t=ab.nextInt();
 while(t-->0)
 {
     root=new trie();
     int n=ab.nextInt();
     String arr[]=new String[n];
     for(int i=0;i<n;++i)
     arr[i]=ab.next();
      fn(arr,n,ab.next());
     //System.out.println();
 }
  }
}

All Articles