Advertisement
Saleh127

UVA 628

Sep 1st, 2020
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int n,m;
  4. string rule,a[10000],ans[10000];
  5.  
  6. void backtrack(int pos)
  7. {
  8. if(pos==rule.size())
  9. {
  10. for(int i=0;i<pos;i++)
  11. {
  12. cout<<ans[i];
  13. }
  14. cout<<endl;
  15. return ;
  16. }
  17. else
  18. {
  19. if(rule[pos]=='#')
  20. {
  21. for(int i=0;i<n;i++)
  22. {
  23. ans[pos]=a[i];
  24.  
  25. backtrack(pos+1);
  26. }
  27. }
  28. else
  29. {
  30. for(int i=0;i<10;i++)
  31. {
  32. ans[pos]=i+'0';
  33.  
  34. backtrack(pos+1);
  35. }
  36. }
  37.  
  38. }
  39.  
  40. }
  41.  
  42. int main()
  43. {
  44. ios_base::sync_with_stdio(0);
  45. cin.tie(0);cout.tie(0);
  46.  
  47. while(cin>>n)
  48. {
  49.  
  50. for(int i=0;i<n;i++)
  51. {
  52. cin>>a[i];
  53. }
  54. cin>>m;
  55. cout<<"--"<<endl;
  56. while(m--)
  57. {
  58. cin>>rule;
  59. backtrack(0);
  60. }
  61. }
  62. return 0;
  63. }
  64.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement