1. Home
  1. Login
  2. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文

BC20280302

UID: 3242, Registered at 2025-9-2 14:51:25, last login at 2025-12-4 18:48:32, last active at 2025-12-6 19:59:33.

Solved 46 problems, RP: 199.1 (No. 147)

♂
  • Bio

    // NOI 2001 炮兵阵地(屎山代码)
    
    
    #include <bits/stdc++.h>
    
    using namespace std;
    int f[20], dp[110][1<<10][1<<10];
    int main() {
    	int n, m;
    	cin >> n >> m;
    	for (int i = 1; i <= n; i++) for (int j = m - 1; j >= 0; j--) {
    		char c;
    		cin >> c;
    		if (c == 'P') f[i] += (1 << j);
    	}
    	for (int s = 0; s < (1 << m); s++) dp[1][s][0] = __builtin_popcount(s);
    	for (int i = 2; i <= n; i++) {
    		for (int s = f[i]; ; s = (s - 1) & f[i]) {
    			if ((s & (s << 1)) != 0 || (s & (s << 2)) != 0) continue;
    			int t = ((~s) & f[i-1]);
    			for (int p = t; ; p = (p - 1) & t) {
    				if ((p & (p << 1)) || (p & (p << 2))) continue;
    				int tt = ((~s) & (~p) & f[i-2]);
    				for (int pp = tt; ; pp = (pp-1) & tt) {
    					if ((pp & (pp << 1)) || (pp & (pp << 2))) continue;
    					dp[i][s][p] = max(dp[i][s][p], dp[i-1][p][pp]);
    					if (pp == 0) break;
    				}
    				dp[i][s][p] += __builtin_popcount(s);
    				if (p == 0) break;
    			}
    			if (s == 0) break;
    		}
    	}
    	int ans = -1;
    	for (int i = 0; i < (1 << m); i++) {
    		for (int j = 0; j < (1 << m); j++) ans = max(ans, dp[n][i][j]);
    	}
    	cout << ans << endl;
    	return 0;
    }
  • Recent Activities

    • 1203线段树2 IOI
    • 1203线段树1 IOI
    • 1126二分 2 IOI
    • 1126 二分 1 IOI
    • 20251120 IOI
    • 1119 贪心2 IOI
    • 1119 贪心1 IOI
    • CSP-S真题 IOI
    • CSP-J真题 IOI
    • 初一B 质数 Assignment
    • 20251023 IOI(Strict)
    • 20251009集训 OI
    • 20250925集训——UOI-R1重现赛 IOI
    • 国庆提高/省选组比赛 IOI
55
Submitted
46
Accepted
0
Solutions Liked

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 粤ICP备2021104657号
  2. Worker 0, 7ms
  3. Powered by Hydro v5.0.0-beta.13 Community
CLOSE

SIGN IN

Using your HFOJ universal account

Forgot password or username?