Guest User

Untitled

a guest
May 24th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. #include<iostream>
  2. #include<windows.h>
  3. using namespace std;
  4. int matr[1000][1000];
  5. int n,m;
  6. int b[1000];
  7. int h=0;
  8.  
  9. DWORD WINAPI f(LPVOID pParam)
  10. {
  11. int parametr = *(int*)pParam;
  12.  
  13.  
  14. int i;
  15.  
  16.  
  17.  
  18. int Max=matr[parametr][0];
  19.  
  20. for(i=1;i<n;i++)
  21. {
  22.  
  23. if(matr[parametr][i] > Max)
  24. Max = matr[parametr][i];
  25. }
  26. b[h]=Max;
  27. h++;
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37. return 0;
  38. }
  39. int main()
  40. {
  41. //InitializeCriticalSection( &cs );
  42.  
  43. cin>>m>>n;
  44.  
  45. for(int i=0;i<m;i++)
  46. {
  47.  
  48. for(int j=0;j<n;j++)
  49. {
  50. cin>>matr[i][j];
  51.  
  52.  
  53. }
  54.  
  55. }
  56.  
  57.  
  58. HANDLE* threads = new HANDLE[m];
  59.  
  60. int *a=new int[m];
  61.  
  62. for(int i=0;i<m;i++)
  63. {
  64. a[i]=i;
  65. }
  66. for(int i=0;i<m;i++)
  67. b[i]=i;
  68.  
  69.  
  70. for(int i=0;i<m;i++)
  71.  
  72. {
  73. threads[i] = CreateThread(0, 0, (LPTHREAD_START_ROUTINE)f, (LPVOID)&a[i], 0, 0);
  74.  
  75. }
  76.  
  77. WaitForMultipleObjects(m, threads, 1, INFINITE);
  78.  
  79. int Max=b[0];
  80. for(int i=1;i<m;i++)
  81. {
  82. if( b[i]> Max)
  83. Max = b[i];
  84. }
  85.  
  86. cout<<Max;
  87.  
  88.  
  89.  
  90.  
  91. return 0;
  92. }
Add Comment
Please, Sign In to add comment