fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void check(vector<vector<int>>&mat, int r, int c, int n){
  5. int flag=1;
  6. int i=0;
  7. int j=0,k;
  8. for(k=0;k<r*c;)
  9. {
  10. if(flag)
  11. {
  12. for(;i>=0&&j<c;j++,i--)
  13. {
  14. if (mat[i][j]==n)
  15. exit(0);
  16. if(i==0)
  17. cout<<mat[i][j];
  18. else
  19. cout<<","<<mat[i][j];
  20. k++;
  21. }
  22. if(i<0&&j<=c-1)
  23. i=0;
  24. if(j==c)
  25. {
  26. i=i+2;
  27. j--;
  28. }
  29. }
  30. else
  31. {
  32. for(;j>=0&&i<r;i++,j--)
  33. {
  34. if(mat[i][j]==n)
  35. exit(0);
  36. cout<<","<<mat[i][j];
  37. k++;
  38. }
  39. if(j<0&&i<=r-1)
  40. j=0;
  41. if(i==r)
  42. {
  43. j=j+2;
  44. i--;
  45. }
  46. }
  47. flag=!flag;
  48. }
  49. }
  50. int main()
  51. {
  52. int t;
  53. cin>>t;
  54. while(t--)
  55. {
  56. int r,c,n;
  57. cin>>r>>c>>n;
  58. vector<vector<int>>mat(n);
  59. for(int i=0;i<r;i++)
  60. {
  61. for(int j=0;j<c;j++)
  62. {
  63. int a;
  64. cin>>a;
  65. mat[i].push_back(a);
  66. }
  67. }
  68. check(mat,r,c,n);
  69. printf("\n");
  70. }
  71. return 0;
  72. }
Success #stdin #stdout 0s 4384KB
stdin
1
5 5 24
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
stdout
1,2,6,11,73,4,8,12,16,21,17,13,95,10,14,18,22,23,19,15,20