Advertisement
Guest User

dzikość bez cenzury

a guest
Mar 24th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.51 KB | None | 0 0
  1. #include <iostream>
  2. #include<algorithm>
  3. #include<stdio.h>
  4.  
  5. int n, nom[100], a, wyniki[10000], wyniki2[10000], q, pytanka[10000], b;
  6.  
  7. using namespace std;
  8.  
  9. int main() {
  10.     scanf("%d", &n);
  11.     for (int i = 0; i < n; ++i) {
  12.         scanf("%d", &nom[i]);
  13.     }
  14. //    sort(nom, nom + n, greater<int>());
  15.     for (int i = 0; i < 10000; ++i) {
  16.         wyniki[i] = 100000;
  17.     }
  18.     wyniki[0] = 0;
  19.     for (int i = 0; i < n; ++i) {
  20.         a = nom[i];
  21.         for (int j = 1; j < 10000 / a; ++j) {
  22.             if (wyniki[a * j] > wyniki[a * j - a] + 1) {
  23.                 wyniki[a * j] = wyniki[a * j - a] + 1;
  24.                 wyniki2[a * j] = a;
  25.             }
  26.             if (wyniki[j] != 100000 && wyniki[j + a] > wyniki[j] + 1) {
  27.                 wyniki[j + a] = wyniki[j] + 1;
  28.                 wyniki2[j + a] = a;
  29.             }
  30.         }
  31.     }
  32. /*
  33. for(int i=0; i<20; ++i)
  34. {
  35.     cout<<wyniki[i]<<" ";
  36. }
  37. cout<<endl<<endl;
  38. for(int i=0; i<20; ++i)
  39. {
  40.     cout<<wyniki2[i]<<" ";
  41. }
  42. */
  43.     scanf("%d", &q);
  44.     for (int i = 0; i < q; ++i) {
  45.         scanf("%d", &pytanka[i]);
  46.     }
  47.     for (int i = 0; i < q; ++i) {
  48.         b = pytanka[i];
  49.         /* if(wyniki[b]==100000)
  50.          {
  51.              printf("-1");
  52.          }*/
  53.         {
  54.             int licznik = b;
  55.             printf("%d", wyniki[b]);
  56.             while (licznik != 0) {
  57.  
  58.                 printf(" %d", wyniki2[licznik]);
  59.                 licznik -= wyniki2[licznik];
  60.             }
  61.             printf("\n");
  62.         }
  63.     }
  64.     return 0;
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement