这题n^3能过?
查看原帖
这题n^3能过?
611118
Sp6kw楼主2024/7/14 22:10

O(n^3)复杂度的AC代码

#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <cmath>
#include <tuple>
#include <iomanip>
#include <sstream>
using namespace std;

const int MAXN = 105;

int r, c, k;
char g[MAXN][MAXN];
int ans;

bool check(int i, int j, int dir) {
	int x;
	for (int d = 0; d < k; d++) {
		if (dir == 0) {
			x = g[i + d][j];
		}
		else {
			x = g[i][j + d];
		}
		if (x != '.') {
			return false;
		}
	}
	return true;
}

int main() {
	cin >> r >> c >> k;
	for (int i = 1; i <= r; i++) {
		for (int j = 1; j <= c; j++) {
			cin >> g[i][j];
		}
	}
	for (int i = 1; i <= r; i++) {
		for (int j = 1; j <= c; j++) {
			if (check(i, j, 0)) {
				ans++;
			}
			if (check(i, j, 1)) {
				ans++;
			}
		}
	}
	if (k == 1) cout << ans / 2;
	else cout << ans;
	return 0;
}

看看是哪里,比较好奇

2024/7/14 22:10
加载中...