orazma

a.cpp

Jun 19th, 2026
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.53 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define f first
  3. #define s second
  4. #define ll long long
  5. #define pb push_back
  6. #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0)
  7. #define mk make_pair
  8. using namespace std;
  9.  
  10. const int MAXN = 1e6 + 5;
  11. const int INF = 1e9 + 7;
  12. const int MOD = 1e9 + 7;
  13.  
  14. void solve(int Test){
  15.  
  16.     int n, m, k;
  17.     cin >> n >> m >> k;
  18.  
  19.     for (int i = 0; i < n; i++){
  20.         cin >> a[i];
  21.     }
  22.  
  23.     for (int i = 1; i <= k; i++){
  24.         int x, y, cost;
  25.         cin >> x >> y >> cost;
  26.         x--;
  27.         y--;
  28.         c[x][y] = cost;
  29.     }
  30.  
  31.     for (int i = 0; i < n; i++){
  32.         dp[(1 << i)][i] = a[i];
  33.     }
  34.  
  35.     for (int mask = 1; mask < (1 << n); mask++){
  36.         for (int i = 0; i < n; i++){
  37.             if ((mask >> i) & 1){
  38.                 for (int j = 0; j < n; j++){
  39.                     if ((mask >> j) & 1 == 0){
  40.                         dp[mask | (1 << j)] =
  41.                         max(dp[mask | (1 << j)],
  42.                             dp[mask][i] + a[j] + c[i][j]);
  43.                     }
  44.                 }
  45.             }
  46.         }
  47.     }
  48.  
  49.     for (int mask = 1; mask < (1 << n); mask++){
  50.         int cnt = builtin_popcount(mask);
  51.         if (cnt == m){
  52.             for (int i = 0; i < n; i++){
  53.                 if ((mask >> i) & 1){
  54.                     ans = max(ans, d[mask][i]);
  55.                 }
  56.             }
  57.         }
  58.     }
  59.  
  60.  
  61. }
  62.  
  63. main() {
  64.     IOS;
  65.     srand(time(0));
  66.     int t = 1;
  67.     //cin >> t;
  68.     int T = 1;
  69.     while(t--){
  70.         solve(T);
  71.         T++;
  72.     }
  73. }
  74.  
Advertisement
Add Comment
Please, Sign In to add comment