Advertisement
Mlack

mymutex

May 4th, 2014
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.84 KB | None | 0 0
  1. ////////////////////////////////////////////////////////////////
  2. #include <iostream>
  3. #include <thread>
  4. #include <mutex>
  5. #include <string>
  6.  
  7. using namespace std;
  8.  
  9. std::mutex g_pages_mutex;
  10.  
  11. FILE *stream;
  12.  
  13. void MAIN() {
  14.     g_pages_mutex.lock();
  15.  
  16.     //freopen_s(&stream, "B-large1.in", "r", stdin);
  17.     //freopen_s(&stream, "B-large1.out", "w", stdout);
  18.     int T;
  19.     cin >> T;
  20.     for (int i = 0; i < T; ++i) {
  21.         unsigned long long A, B, K;
  22.         cin >> A >> B >> K;
  23.         unsigned long long  sum = 0;
  24.         for (unsigned long long j = 0; j < A; ++j)
  25.         for (unsigned long long k = 0; k < B; ++k) {
  26.             if ((j & k) < K) { ++sum; }
  27.         }
  28.         cout << "Case #" << i + 1 << ": " << sum << endl;
  29.     }
  30.  
  31.     g_pages_mutex.unlock();
  32. }
  33.  
  34. int main() {
  35.     thread t1(MAIN);
  36.     thread t2(MAIN);
  37.     thread t3(MAIN);
  38.     t1.join();
  39.     t2.join();
  40.     t3.join();
  41.  
  42.     g_pages_mutex.unlock();
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement