
暴力算法
暴力算法
*DDL_GzmBlog
再见锋芒,准备启程
展开
-
[at] abc 258G - Triangle 三元组可达-暴力
tag:tag :tag: 传送门:题意 :给定一个010101完全图,111表示这两个点有边相连,000表示这两个点没有边相连询问有多少组三元组(i,j,k)(i,j,k)(i,j,k),满足两两之间有边相连思路 :暴力的做法n3n^3n3,因为图只存在010101,我们考虑使用位运算减去一层的枚举即 , 我们将状态存入中,然后枚举两行之间的状态,进行&\&&运算显然的如果&=1\&=1&=1那么,存在三个点是可达的,时间复杂度n2lognn^2lognn2logncode :...原创 2022-07-03 01:29:00 · 346 阅读 · 0 评论 -
[cf] 803 div2 A. XOR Mixup
tag:tag :tag: 传送门 :给定一个数组AAA,其中n−1n-1n−1个数是原数组,另一个数n−1n-1n−1个数的异或,询问给出的任意排列中,该数是什么值因为数组可以分为两部分,n−1n-1n−1和111,又因为必然存在有解所以整个数组异或和为000,因此随便取一个即可...原创 2022-06-29 10:07:57 · 152 阅读 · 0 评论 -
[Acwing] 1210连号区间 暴力+区间枚举
前言又是一个可以跑 n^2的题。。。传送门 :思路直接暴力区间枚举就行了啊我们统计区间个数 是否 等于区间最大-区间最小就行了啊CODEvoid solve(){ cin>>n; int res = 0; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<=n;i++) { int maxn = 0 ; int minn = INF; for(int j=i;j<=n原创 2021-11-05 21:34:40 · 139 阅读 · 0 评论 -
[abc] C - Travel 暴力枚举
前言传送门 : https://atcoder.jp/contests/abc183/tasks/abc183_c思路和上一题刚补的差不多因为数据范围小 且 终点起点一样因此我们可以枚举所有全排列计算长度CODE#include <bits/stdc++.h>using namespace std;const int N = 10;int g[N][N];int num[N];int n,k;int ans = 0 ,idx = 0;void cal(){原创 2021-10-03 10:07:15 · 193 阅读 · 0 评论 -
[Acwing] 1205. 买不到的数目 结论暴力
前言还真是…传送门 :思路“简单”+(100010001000的范围) --> 暴力看了眼题解区也没发现这个的证明,反正最重要的就是答案范围在 n∗mn*mn∗m 内这就确保了暴力的时间复杂度,当然你也可以在上面DPDPDPCODEvoid solve(){ cin>>n>>m; for(int i=n*m;i>=1;i--) { int flag = 1; if(i% min(n,m) == 0 ) continue;原创 2021-11-04 15:41:45 · 131 阅读 · 0 评论 -
[nK] 又一数区间问题 暴力统计,贪心优化
前言太简单了吧,就debug难而已传送门: https://ac.nowcoder.com/acm/contest/11215/E思路一开始区间问题想到的是 线段树,RMQ,树状数组.但是看完题目之后发现维护的是 区间乘积, 查询是 logn 然后枚举区间 nlogn 因此理论可行但是我不会写awa因为此题给的是 1-9不难想到 是 string 字符所以我们可以通过枚举左端点 O n但是这么算下来不就是 O n^2 的了 ?因此我们可以优化区间长度1e5所有都是1的话 那么会原创 2021-10-05 12:18:08 · 200 阅读 · 1 评论 -
[abc] AtCoder Beginner Contest 221 ---> C - Select Mul 暴力枚举
文章目录前言思路CODE前言我果真就是连暴力都不会写 老废物了传送门 : https://atcoder.jp/contests/abc221/tasks/abc221_c思路口胡的残破思路第一:看完这道题,再看这个范围,(妥了 贪心 为什么呢 因为一开始我没看范围)不就是排序之后,一个给a,一个给b吗 这样子一定贪心对吧(口胡)结果样例都没过第二:本来以为这题是 枚举所有的 排列选数的选法 A[1,n] A[2,n]然后找最大感觉是深搜,结果难的一批,没写出来,跑路了正解对于原创 2021-10-03 09:47:23 · 255 阅读 · 0 评论 -
[Acwing*] AcWing 1216. 饮料换购 思维
前言Gzm在不翻题解的情况下,5分钟之内做出了此题Gzm大进步 !传送门:思路因为数据范围很小,我们可以直接枚举做枚举需要记录的量呢?剩下+已经喝的剩下+已经喝的剩下+已经喝的然后对于每次瓶盖的兑换,我们都value%=3value\%=3value%=3 表示剩下的瓶盖CODEvoid solve(){ cin>>n; int value = 0 ; int num = 0; while(n) { num+=n; value += n%3; n原创 2021-11-05 21:20:01 · 127 阅读 · 0 评论 -
[Acwing | 蓝桥杯] 1209. 带分数 dfs
前言传送门 :思路可以使用dfsdfsdfs暴力出一个999位数的全排列然后通过双重循环去分割CODE// Problem: 带分数// Contest: AcWing// URL: https://www.acwing.com/problem/content/1211/// Memory Limit: 64 MB// Time Limit: 1000 ms// // Powered by CP Editor (https://cpeditor.org)//��һ�δ��Ϻ�վ֮原创 2022-02-25 21:19:16 · 539 阅读 · 0 评论