fork(1) download
  1. #include <iostream>
  2. #include <algorithm>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7.  
  8. int n,m;
  9. cin >> n >> m;
  10. int grid[n][m];
  11.  
  12. for(int i=0; i<n; i++)
  13. for(int j=0; j<m; j++)
  14. cin >> grid[i][j];
  15.  
  16. if(n > m){
  17.  
  18. for(int i=0; i<m; i++){
  19.  
  20. int mini = 1000;
  21. for(int j = 0; j <n; j++)
  22. mini = min(mini,grid[j][i]);
  23.  
  24. if(mini){
  25. for(int j = 0; j <n; j++)
  26. grid[j][i]-=mini;
  27.  
  28. cout << "mini " << mini << " - - - - - -- - -" << endl;
  29. while(mini--)
  30. cout << "col " << i << endl;
  31. }
  32. }
  33.  
  34.  
  35. for(int i=0; i <n; i++){
  36.  
  37. int mini = 1000;
  38. for(int j=0; j<m; j++)
  39. mini = min(mini,grid[i][j]);
  40. if(mini){
  41. for(int j=0; j <m; j++)
  42. grid[i][j];
  43.  
  44. cout << "mini " << mini << " - - - - - -- - -" << endl;
  45. while(mini--)
  46. cout << "row " << i << endl;
  47. }
  48. }
  49.  
  50.  
  51.  
  52. }
  53.  
  54.  
  55.  
  56. else{
  57.  
  58. for(int i=0; i <n; i++){
  59.  
  60. int mini = 1000;
  61. for(int j=0; j<m; j++)
  62. mini = min(mini,grid[i][j]);
  63. if(mini){
  64. for(int j=0; j <m; j++)
  65. grid[i][j];
  66.  
  67. cout << "mini " << mini << " - - - - - -- - -" << endl;
  68.  
  69. while(mini--)
  70. cout << "row " << i << endl;
  71. }
  72. }
  73.  
  74. for(int i=0; i<m; i++){
  75.  
  76. int mini = 1000;
  77. for(int j = 0; j <n; j++)
  78. mini = min(mini,grid[j][i]);
  79.  
  80. if(mini){
  81. for(int j = 0; j <n; j++)
  82. grid[j][i]-=mini;
  83.  
  84. cout << "mini " << mini << " - - - - - -- - -" << endl;
  85.  
  86. while(mini--)
  87. cout << "col " << i << endl;
  88. }
  89. }
  90.  
  91.  
  92. }
  93.  
  94. return 0;
  95. }
Success #stdin #stdout 0s 15240KB
stdin
3 5
2 2 2 3 2
0 0 0 1 0
1 1 1 2 1
stdout
mini     2 -  - - - - -- - -
row 0
row 0
mini     1 -  - - - - -- - -
row 2
mini     1 -  - - - - -- - -
col 3