首页 > 小心火烛的歪
头像 Leavery
发表于 2024-11-24 22:28:57
D题 bitset做法 直接枚举所有2^q种情况 因为数据范围很小 所以O(2^q*q*n*m)即可通过该题 #include <iostream> #include <bitset> using namespace std; int main() { int n,m, 展开全文
头像 Nanssu
发表于 2025-03-11 15:19:12
#include <iostream> #include <bits/stdc++.h> #include <set> #include <vector> using namespace std; void dfs(vector<int> 展开全文
头像 牛客336387193号
发表于 2025-03-26 19:53:05
用回溯法做,fireworks函数是回溯函数,如果填满了,且步数更少,就记录结果。重载了加减法方便一点。origin数组是记录的杂物,用于checkstone函数确保烟花没有放在杂物上面。 #include <iostream> #include<vector> using 展开全文
头像 番禺小韭菜
发表于 2025-03-02 21:11:51
#include <iostream> #include <bitset> using namespace std; int main() { int n, m, q; cin >> n >> m >> q; bi 展开全文
头像 在拧螺丝的他很有趣
发表于 2025-03-04 13:42:34
import copy # 获取可能的组合 def get_list(lst): def b(start, path): if path: result.append(path) for i in range(start, len( 展开全文
头像 爱读书的高级磨洋工很野蛮
发表于 2025-04-24 15:17:08
n,m,q=list(map(int,input().split())) grass=[] plan=[] for i in range(n): row=[] for j in input(): row.append(int(j)) grass.appe 展开全文
头像 牛客321340711号
发表于 2025-06-16 20:51:25
# 读取输入 n, m, q = map(int, input().split()) # 存储草地初始状态 grass = [input() for _ in range(n)] # 存储所有烟花燃放计划 plans = [] for _ in range(q): plan = [input 展开全文
头像 lhp_zml
发表于 2025-03-14 11:35:18
// 数学,组合,dfs 就好, 如果需要排列,也可以dfs,标记一下选过了什么,后面注意不选它就好了 #include<bits/stdc++.h> using namespace std; const int N=8; typedef pair<int,int> 展开全文
头像 安哥拉兔刷牛客
发表于 2025-04-17 14:38:39
我觉得我这个办法有点笨, 但是数据范围不大的情况下可以用. from itertools import combinations def OR_process(a:str, b:str, m:int): ai = int(a, 2) bi = int(b,2) return 展开全文

等你来战

查看全部