fork(2) download
  1. #include<iostream>
  2. using namespace std;
  3. int i,j,k,x,T,n,m,CJindex[1001],flag=1, flag2=5,jobChef[1001],jobAss[1001];
  4. int main()
  5. {
  6. cin>>T;
  7. for(i=0;i<T;i++)
  8. {
  9. flag2=5;
  10. cin>>n>>m;
  11. for(j=1;j<=m;j++)
  12. {
  13. cin>>CJindex[j];
  14. }
  15. for(j=1; j<=n;j++)
  16. {
  17. for(x=1;x<=m;x++)
  18. { if(j==CJindex[x])
  19. {
  20. flag=0;
  21. jobChef[j]=0;
  22. jobAss[j]=0;
  23. break;
  24. }
  25.  
  26. }
  27. if(flag==0)
  28. {
  29. flag=1;
  30. continue;
  31. }
  32. if(flag2==5)
  33. {
  34. jobChef[j]=j;
  35. flag2=1;
  36. continue;
  37. }
  38. if(flag!=0)
  39. {
  40. if(flag2==0)
  41. {
  42. jobChef[j]=j;
  43. flag2=1;
  44. }
  45. else
  46. {
  47. if(flag2==1)
  48. {
  49. jobAss[j]=j;
  50. flag2=0;
  51. }
  52. }
  53. }
  54. }
  55. for(k=1;k<=n;k++)
  56. {
  57. if(!jobChef[k]&&jobChef[k]>1000&&jobChef[k]<-1000)
  58. jobChef[k]=0;
  59. if(jobChef[k]&&jobChef[k]<1000&&jobChef[k]>-1000)
  60. cout<<jobChef[k]<<" ";
  61. }
  62. cout<<"\n";
  63. for(k=1;k<=n;k++)
  64. {
  65. if(!jobAss[k]&&jobAss[k]>1000&&jobAss[k]<-1000)
  66. jobAss[k]=0;
  67. if(jobAss[k]&&jobAss[k]<1000&&jobAss[k]>-1000)
  68. cout<<jobAss[k]<<" ";
  69. }
  70. cout<<"\n";
  71. }
  72. return 0;
  73. }
Success #stdin #stdout 0s 16072KB
stdin
3
6 3
2 4 1
3 2
3 2
8 2
3 8
stdout
3 6 
5 
1 

1 4 6 
2 5 7