Advertisement
Guest User

Untitled

a guest
Nov 26th, 2014
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.20 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int n,x;
  4. int a1[10000],a2[10000],a3[10000]; //массивы,содержащие номера школьников, имеющих сколнности 1 2 и 3 соответственно
  5. int size1,size2,size3;// размеры этих массивов
  6. int i1,i2,i3; // номер текущего элемента массива
  7. int main()
  8. {
  9. cin>>n;
  10. for(int i=1;i<=n;i++)
  11. {
  12. cin>>x;// считываем склонность школьника
  13. if(x==1)// если склонность к 1, заносим в первый массив его номер
  14. {
  15. size1++;// увеличиваем размер первого массива
  16. a1[size1]=i;
  17. }
  18. if(x==2)// если склонность к 2, заносим во второй массив его номер
  19. {
  20. size2++;// увеличиваем размер второго массива
  21. a2[size2]=i;
  22. }
  23. if(x==3)// если склонность к 3, заносим в третий массив его номер
  24. {
  25. size3++;// увеличиваем размер третьего массива
  26. a3[size3]=i;
  27. }
  28. }
  29. cout<<min(size1,min(size2,size3))<<endl;// выводи ответ - это минимальнный из размеров массивов
  30. i1=1;
  31. i2=1;
  32. i3=1;// начинаем рассматривать первых школьников
  33. while(true)
  34. {
  35. if(i1>size1 || i2>size2 || i3>size3)// если номер текущего рассматриваемого элемента больше размера массива, значит школьники в массиве закончились,и больше команду мы собрать не можем, вылетаем
  36. {
  37. return 0;
  38. }
  39. cout<<a1[i1]<<' '<<a2[i2]<<' '<<a3[i3]<<endl;// выводим номера школьников,попавших в команду
  40. i1++;
  41. i2++;
  42. i3++;// переходим к следующим школьникам в массивах
  43. }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement