zoukankan      html  css  js  c++  java
  • 839E

    839E - Mother of Dragons

    题意:

    题解:

    没仔细看,好像现在解决不了~

    以后再补

    先贴上dalao的代码

     1 // God & me
     2 // Fly ...
     3 #include <bits/stdc++.h>
     4 using namespace std;
     5 typedef long long ll;
     6 const int maxn = 40, C = 20;
     7 
     8 int n, k, dp[1 << C];
     9 ll adj[maxn];
    10 int maxc(){
    11     for(int i = 0; i < n; i++)
    12         for(int j = 0, x; j < n; j++)
    13             cin >> x, adj[i] |= (ll) (x || i == j) << j;
    14     for(int i = 1; i < (1 << max(0, n - C)); i++){
    15         int x = i;
    16         for(int j = 0; j < C; j++)
    17             if((i >> j) & 1)
    18                 x &= adj[j + C] >> C;
    19         if(x == i)
    20             dp[i] = __builtin_popcount(i);
    21     }
    22     for(int i = 1; i < (1 << max(0, n - C)); i++)
    23         for(int j = 0; j < C; j++)
    24             if((i >> j) & 1)
    25                 dp[i] = max(dp[i], dp[i ^ (1 << j)]);
    26     int ans = 0;
    27     for (int i = 0; i < (1 << min(C, n)); i++){
    28         int x = i, y = (1 << max(0, n - C)) - 1;
    29         for (int j = 0; j < min(C, n); j++)
    30             if ((i >> j) & 1)
    31                 x &= adj[j] & ((1 << C) - 1), y &= adj[j] >> C;
    32         if (x != i)    continue;
    33         ans = max(ans, __builtin_popcount(i) + dp[y]);
    34     }
    35     return ans;
    36 }
    37 int main(){
    38     ios::sync_with_stdio(0), cin.tie(0);
    39     cin >> n >> k;
    40     int ans = maxc();
    41     long double x = (long double) k / ans;
    42     cout << fixed << setprecision(8) << x * x * ans * (ans - 1) / 2 << '
    ';
    43     return 0;
    44 }
    COPY
  • 相关阅读:
    编程里的数字游戏
    SqlServer2005Express下的事件探查器
    来玩玩这个
    把一个bitmap在内存中的数据块 搬到另一个bitmap中
    一些常用的sql
    C#图像处理
    来玩玩画直线
    关于未来的思考
    年末个人小结
    [转载]编写超级可读代码的15个最佳实践
  • 原文地址:https://www.cnblogs.com/yijiull/p/7364052.html
Copyright © 2011-2022 走看看