zoukankan      html  css  js  c++  java
  • AtCoder Beginner Contest 147 E. Balanced Path

    思路:

    dp,使用了bitset优化。

    实现:

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 const int N = 81;
     4 const int INF = 0x3f3f3f3f;
     5 int a[N][N], b[N][N];
     6 bitset<N * N * 4> dp[N][N];
     7 
     8 int main()
     9 {
    10     int h, w;
    11     while (cin >> h >> w)
    12     {
    13         for (int i = 0; i < h; i++)
    14         {
    15             for (int j = 0; j < w; j++)
    16             {
    17                 cin >> a[i][j];
    18             }
    19         }
    20         for (int i = 0; i < h; i++)
    21         {
    22             for (int j = 0; j < w; j++)
    23             {
    24                 cin >> b[i][j];
    25             }
    26         }
    27         for (int i = 0; i < h; i++)
    28         {
    29             for (int j = 0; j < w; j++)
    30             {
    31                 dp[i][j].reset();
    32             }
    33         }
    34         dp[0][0][a[0][0] - b[0][0] + N * N * 2] = 1;
    35         dp[0][0][b[0][0] - a[0][0] + N * N * 2] = 1;
    36         for (int i = 0; i < h; i++)
    37         {
    38             for (int j = 0; j < w; j++)
    39             {
    40                 int tmp = abs(a[i][j] - b[i][j]);
    41                 if (j)
    42                 {
    43                     dp[i][j] |= dp[i][j - 1] << tmp;
    44                     dp[i][j] |= dp[i][j - 1] >> tmp;
    45                 }
    46                 if (i)
    47                 {
    48                     dp[i][j] |= dp[i - 1][j] << tmp;
    49                     dp[i][j] |= dp[i - 1][j] >> tmp;
    50                 }
    51             }
    52         }
    53         int res = INF;
    54         for (int i = 0; i < N * N * 4; i++)
    55         {
    56             if (dp[h - 1][w - 1][i]) res = min(res, abs(i - N * N * 2));
    57         }
    58         cout << res << endl;
    59     }
    60     return 0;
    61 }
  • 相关阅读:
    Rom定制
    android home键2
    蓝牙分享
    关闭系统锁屏
    android home键
    android view 背景重复
    android 找开软件所在市场页面
    jquery 选项卡
    ajaxfileupload ie 多参数
    找回 ie 图标
  • 原文地址:https://www.cnblogs.com/wangyiming/p/12055814.html
Copyright © 2011-2022 走看看