fork download
  1. #include <iostream>
  2. #include <bits/stdc++.h>
  3. typedef long long int ll;
  4. using namespace std;
  5.  
  6. int main() {
  7. ll friends, first, second, apuntador=1;
  8. cin>>friends>>first;
  9. int arr[friends+1];
  10. for(int j=0;j<friends+1;j++){
  11. arr[j]=0;
  12. }
  13. for(int i=1;i<=friends;i++){
  14. cin>>second;
  15. if(first!=0){
  16. arr[first]=i;
  17. first=second;
  18. cout<<"pruebafir: "<<"i: "<<i<<"Arr: "<<arr[i]<<" nuevo f: "<<first<<endl;
  19. }
  20. else if(second!=0){
  21. arr[second]=i+1;
  22. cout<<"pruebasec: "<<"i: "<<i<<"Arr: "<<arr[i+1]<<endl;
  23. }
  24. else{
  25. while(arr[apuntador]!=0){
  26. apuntador++;
  27. cout<<"val en apu: "<<arr[apuntador]<<"ap: "<<apuntador<<endl;
  28. }
  29. cout<<"i: "<<i<<endl;
  30. cout<<"apuntador: "<<apuntador<<endl;
  31. if(apuntador!=i){
  32. if(apuntador!=i+1){
  33. arr[apuntador]=i;
  34. apuntador++;
  35. first=second;
  36. cout<<"prueba3: "<<"i: "<<i<<"Arr: "<<arr[apuntador]<<" nuevo f: "<<first<<endl;
  37. }
  38. else{
  39. arr[apuntador]=i+1;
  40. apuntador++;
  41. cout<<"prueba4: "<<"i: "<<i<<"Arr: "<<arr[apuntador]<<endl;
  42. }
  43. }
  44. else{
  45. if(apuntador!=i+1){
  46. arr[apuntador]=i+1;
  47. apuntador++;
  48. cout<<"prueba5: "<<"i: "<<i<<"Arr: "<<arr[apuntador]<<endl;
  49. }
  50. }
  51. }
  52. }
  53. for(int i=1;i<=friends;i++){
  54. cout<<arr[i]<<" ";
  55. }
  56. cout<<endl;
  57. return 0;
  58. }
Success #stdin #stdout 0s 4396KB
stdin
5
5 0 0 2 4
stdout
pruebafir: i: 1Arr: 0 nuevo f: 0
i: 2
apuntador: 1
prueba3: i: 2Arr: 0 nuevo f: 0
pruebasec: i: 3Arr: 0
pruebasec: i: 4Arr: 1
pruebasec: i: 5Arr: 467702076
2 4 0 6 1