ICode9

精准搜索请尝试: 精确搜索
  • YbtOJ 深度搜索课堂过关 例2 数独游戏【深度优先搜索】2021-01-03 15:30:50

    思路 这道题用搜索实现。 我们可以用三个数组 l , h , g g l,h,gg

  • CF1453C Solution2021-01-01 18:33:05

    题目链接 题解 为了计算面积,需将三角形中与网格平行的边作为三角形的底。显然底越长面积越大,因此对于点\(A\),可以将满足\(AB\)与网格平行且距离最长的\(B\)的数值改为与\(A\)一样。而另一个顶点为满足高最长,一定是\(d\)数值可以到达的最上、最下、最左或最右的格点,预处理即可。 AC

  • 洛谷题单——【图论2-3】最小生成树2021-01-01 16:33:05

    P3366 【模板】最小生成树 一道模板题,prim算法就可以过,krustal算法也是可以的嗷 这里只给出prim的结法 #include <bits/stdc++.h> using namespace std; const int N = 5010; const int INF = 0x3f3f3f3f; int n, m; int g[N][N]; int dist[N]; bool st[N]; int prim() {

  • kuangbin专题十 匹配问题专题(2020/11/22-2020/12/02) 19道2020-12-27 12:02:11

    专题链接kuangbin专题十 匹配问题 快速跳转 题目个人模板匈牙利算法可匹配多个的匈牙利算法KM算法AC代码Fire NetThe Accomodation of StudentsCourses棋盘游戏SwapRain on your ParadeOil SkimmingAntenna PlacementStrategic GameAir RaidTreasure ExplorationCat VS Dog

  • Pupils Redistribution2020-12-26 22:34:14

    题目链接:Pupils Redistribution   题目大意: 给两个数组A和B,元素均为1到5(包含端点),可以选择A中一个数和B中一个数进行交换,问最少交换多少次可以使得两个数组中1的个数相同,2的个数相同,3的个数相同,4的个数相同,5的个数相同。   思路: 记录两个数组中每个数出现的次数,假设分别为a,b,如果

  • 【dp每日一题】HDU 1176 免费馅饼2020-12-25 20:34:45

    大意: 有n个馅饼在不同的时间会落到0到10的区间内,初始位置为5,每秒只能移动一米,问最多能接到多少馅饼 思路: 既可以正着写也可以反着写,正着写的话需要判断能否达到这个点,反着写就无所谓了 正着写: #include <bits/stdc++.h> using namespace std; const int N = 1e5 + 5; typedef lo

  • memset()函数2020-12-19 09:32:12

    文章目录 一、memset()函数概述二、用法要点1.内存空间初始化2.字符串初始化3.清空结构变量或数组 三、常见错误 一、memset()函数概述 memset 函数是内存赋值函数,用来给某一块内存空间进行赋值的;包含在<string.h>头文件中,可以用它对一片内存空间逐字节进行初始化; 原型

  • POJ 29552020-12-16 22:33:50

    做Uva1626时顺手做这道题,思路一致,Uva那道和之前的一道POJ一样的题,但是不知道怎么,一直有问题,直接拿汝佳老师的方法,自己测有问题,但是那上面反而AC了,就很玄学... #include <iostream> #include <cstdio> #include <cstring> using namespace std; const int maxn= 105; char br[max

  • Caocao's Bridges hdu-47382020-12-10 13:03:04

    题面 传送门 题解 缩点, 坑点在最小边为0是, 你至少用1个人去炸桥 代码 int n, m, _, k; int h[N], ne[M << 1], to[M << 1], co[M << 1], tot; int dfn[N], low[N], df, ans; void add(int u, int v, int c) { ne[++tot] = h[u]; to[h[u] = tot] = v; co[tot] = c; } void

  • ~|C++的高精度|[一]~2020-12-09 22:32:25

    1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 using namespace std; 5 int main(){ 6 char a1[100],b1[100]; 7 int a[100],b[100],c[100],lena,lenb,lenc,i,x; 8 //设置数组变量 9 memset(a,0,sizeof(a)); 10

  • P4158 [SCOI2009]粉刷匠2020-12-09 20:32:59

    题目链接 我们不妨先考虑只有一行的情形。 我们做两个前缀和\(red_i,bule_i\)分别表示前\(i\)个里有多少个红色块和蓝色块。 设\(f[i][k]\)为做到第\(i\)块,此时用了\(k\)次涂刷的最大收益。 我们思考如下问题:既然重复涂色没有收益,那么我们强制让我们的涂色方案没有重叠的情况,即让

  • C语言中的malloc、new、memset函数解析2020-12-03 12:01:12

    malloc 在window下,malloc的函数原型: extern void *malloc(unsigned int num_bytes); 头文件: #include<malloc.h>或者#include<alloc.h>两者的内容是完全一样的 如果分配成功:则返回指向被分配内存空间的指针 不然返回指针NULL 同时,当内存不再使用的时候,应使用free()函数将内

  • HDU 3791 二叉搜索树2020-11-27 13:56:31

    传送门 题目大意 判断两序列是否为同一二叉搜索树序列 思路 直接暴力找,如果这个数大于他就是左孩子,否则就是右孩子 代码 int main(){ char s[20]; int tree[550],tree1[550]; int n; while(cin>>n){ if(n==0)break; scanf("%s",s); memset(tree,-1,sizeof tree);

  • 浅谈SPFA判负环2020-11-23 18:01:10

    浅谈$$SPFA$$判负环 1. 关于$$SPFA$$:它死了 ​ $$SPFA(Shortest Path Faster Algorithm)$$是一种优秀的单源最短路算法。它可以在$$O(km)$$的时间复杂度内求出单源最短路。 ​ 但同时,$$SPFA$$有一个令人诟病的点,就是可以被特殊数据卡为$$O(n^2)$$,所以我们一般会选择更稳定的堆优

  • 睿智错误2020-11-09 22:04:54

    鈤啊,最近手残导致fst得好多啊淦,以前总是觉得没必要记录,现在一想还是记下来防止下次吧/kk 以下我分几类来记录。 数据类型和范围 虽然这方面我还是很注意很注意,但还是避免不了睿智错误/kk ×: 1<<i √: 1ll<<i ×: long long x = (1ll << 64) - 1; √: unsigned lo

  • 洛谷P5789 [TJOI2017]可乐(数据加强版) 题解 矩阵快速幂2020-11-08 12:32:00

    题目链接:https://www.luogu.com.cn/problem/P5789 我的理解:矩阵快速幂主要是为了优化状态转移。 解题思路完全参照自 Czy大佬的博客 示例代码: #include <bits/stdc++.h> using namespace std; const int MOD = 2017; int n, m, t, ans; struct Matrix { int a[101][101];

  • [BZOJ3513] idiots - FFT,组合数学2020-10-08 10:03:10

    Description 给定 \(n\) 条边的长度,任选三条边(组合),求能组成三角形的概率。 Solution 首先预处理出任选两条边(可以重复且不限顺序)每种长度和 \(i\) 对应的方案数 \(c[i]\),这个很显然可以用 FFT 求出。 考虑如何修正为组合数,对于每条边 \(a_i\),将 \(c[2a_i]\) 减去 \(1\),即去除将这

  • 一些DP题(顺便找的)2020-10-06 21:31:53

    注:一日恰饭之余,LL大佬说刷啥线段树不如做些DP题,想想也是==然后刷了几道DP题 https://vjudge.net/contest/399437#overview 后续写了上面contest的题,在这篇随笔继续更新 两道下饭题      思路:数字三角形,最简单的DP,没有之一   #include <bits/stdc++.h> using namespace std;

  • #10108. 「一本通 3.7 练习 2」Ant Trip2020-09-22 18:31:57

       性质题: 如果一个连通块可以构成欧拉回路或者路径,显然一笔画完事 然后如果有多个奇数度的点,设奇数度的点为ans,显然我们会发现这个要画ans/2笔,(奇数度的点一定成对存在) #include<cstdio> #include<algorithm> #include<cstring> #include<queue> #include<stack> using namesp

  • 9.19 考试总结2020-09-21 08:03:13

    前言: 貌似自己的开题和别人好像不太一样,别人都是 \(T1-T2-T3\) ,好像没几个像我一样 \(T3-T2-T1\) 的。大雾 T1 潜伏 题目描述: ⼩悠回家之后,跟着⺟亲看了很多抗⽇神剧,其中不乏⼀些谍战⽚。 解放前夕,北平城内潜伏着若⼲名地下党员,他们居住在城市的不同位置。现在身为地下党第⼀指挥

  • poj3311 Hie with the Pie2020-09-14 16:02:43

    题目链接:https://vjudge.net/problem/POJ-3311 题意:从0点出发,每个点至少走一次,最后回到0点,求最短长度 相比tsp问题的不同之处是每个点可以走超过一次。这个条件的效果是,假如直接相连的两点间有一条很长的边w,可能存在另外一条路,重复走过了某个点,使得两点距离<w。这样只要求出两两点

  • [HDU4622] Reincarnation - 后缀自动机2020-08-29 21:01:33

    Description 给定一个长度不超过 \(2 \times 10^3\) 的字符串,有 \(q \le 10^4\) 个询问,每个询问给出一个区间,问区间中共有多少个不同的子串。 Solution 枚举一个后缀,增量构造 SAM,即可得到它所有子串中含有的不同子串的数目 在一次 sam.extend() 过程中,新增的本质不同子串数目为 \(

  • POJ 11412020-08-05 09:00:28

    DP试水题,参考刘汝佳《算法艺术与信息学竞赛》,书中精髓也点出来了,寻找合适的状态(满足最优子结构,无后效性),同时要编写合适的状态转移方程,这时候写出来的朴素的算法一般都是指数时间复杂度的,这时候再利用DP的两个方法优化 #include <cstdio> #include <iostream> #include <algorithm>

  • Power Strings2020-07-30 16:34:36

    链接:Miku 大佬的证明 我的代码 ----------------------- #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<map> using namespace std; char aim[1500001]; int nex[1500001]; int l; int main(){ while(scanf(

  • HDU-5955 Guessing the Dice Roll(AC自动机 + 概率DP + 高斯消元)2020-07-08 23:07:38

    题意:这里有N个玩家在玩一个猜测游戏,每个玩家猜测一个由{1, 2, 3, 4, 5, 6}组成的长度为L的序列,那么一个骰子会被不断地投掷直到猜中一个序列,那么这个人就会赢得游戏。 分析:设\(dp[i][j]\):表示投掷了i个字符,走到AC自动机的第j个位置的概率,可以知道dp[i][j]可以由前面的6个事件转

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有