题解
文章平均质量分 63
github_38838414
这个作者很懒,什么都没留下…
展开
-
整数的2的幂分解
#include#include#include#include#includeusing namespace std;int dp[1000008];/*题目描述一个整数总可以拆分为2的幂的和,例如: 7=1+2+47=1+2+2+2 7=1+1+1+4 7=1+1+1+2+2 7=1+1+1+1+1+2 7=1+1+1+1+1+1+1 总共有六种不同的拆分方式。 再比如原创 2017-07-16 10:27:21 · 538 阅读 · 0 评论 -
leetcode 32. 最长有效括号
leetcode T32 最长有效括号题目地址思路:通过栈来解决class Solution {public: int longestValidParentheses(string s) { stack<int> myStack; int max = 0; int t; for (in...原创 2018-04-20 20:57:55 · 342 阅读 · 0 评论 -
最长回文子串
leetcode 5.最长回文子串头一次拿Java写算法题经典的马拉车算法class Solution{ public String longestPalindrome(String s) { //每个空位插入#,以排除对奇偶性的判断 StringBuffer buffer = new StringBuffer(); ...原创 2018-04-11 15:53:37 · 283 阅读 · 0 评论 -
POJ 1125 Stockbroker Grapevine(floyd算法)
#include#include#include#include/*** 代码好丑*//*** @note 题意: N个股票经纪人,每个股票经纪人都会将得到的消息传播给另外一些股票经纪人,传播的速度均不固定,且从A传到B的速度和B传到A的速度不一定相等。 给定一个消息,并不一定能够传遍所有的股票经纪人,因为股票经纪人可能形成一座座“孤岛”,使得信息无法送达。 现在给定原创 2017-12-06 16:41:05 · 275 阅读 · 0 评论 -
poj2965 The Pilots Brothers' refrigerator(枚举)
#include#include#include#include/*** 哇偶。。。。。一遍过。。。。真是太不习惯了* 本题相当于poj1753的进阶版,可以先完成poj1753,再来尝试这题*//*** @note 题意: 有一冰箱,上面4x4共16个开关("-"状态表示open,"+"状态表close), 当改变一个开关状态时,该开关所在行、列的全部开关原创 2017-12-06 15:16:26 · 190 阅读 · 0 评论 -
POJ 1753 Flip Game (枚举)
题意:翻棋子,当出现全黑或是全白的时候停止,每次翻转连带着上、下、左、右一块翻转(如果有的话)。问实现全白或是全黑所需最少步数思路:重点。。。。每个棋子被翻1,3,5,7或2,4,6,8次的效果完全一样。。。。所以,只要对所有棋子考虑翻或者不翻就可以了。总共2^16种状态,强行DFS........GG然后考虑棋盘每行都可以用一个二进制串来表示,即用int的前4位来表示。异或的性质:如原创 2017-12-05 20:27:53 · 172 阅读 · 0 评论 -
Minimum Spanning Tree SPOJ - MST
题目:Minimum Spanning Tree SPOJ - MST 题意:n个结点,m条边,然后依次给出这m条边的首结点,尾结点,及边长。求连接所有结点的边长最小和为多少。思路:基本的最小生成树问题,用Kruskal算法解决(注意,结果要用long long储存,不然会gg)#define _CRT_SECURE_NO_WARNINGS#include#include#inc原创 2017-08-29 09:29:31 · 253 阅读 · 0 评论 -
CodeForces 277A Learning Languages (并查集)
题目:CodeForces 277A Learning Languages (并查集)题意:有n个人,m种语言,给出每个人会的语言数(可以为0)及种类,求任意两个人都能互相沟通(直接或间接都可以),至少还要继续学习的语言数。思路:并查集如:题目给出的例子,8个人,7种语言。1号会0种语言,2号会1,2,3号语言。。。。。。。。8 703 1 2 31 12 5 42 6原创 2017-08-28 09:26:52 · 500 阅读 · 0 评论 -
SPOJ - AE2A Dice
题目:链接题意:抛n次骰子,求k出现的概率为多少(乘以100后向下取整)思路:当n较小时,是一个很简单的dp问题,用一个二维数组(横轴为抛骰子的次数,纵轴为n次 骰子的数值的和)储存即可。可是本题的n----->100000,已经太大太大了,进一步观察题目, rounded down to the nearest integer。向下取整,结合多项式分布特点。知:当n较大时,概原创 2017-08-26 10:40:33 · 375 阅读 · 0 评论 -
由中序与后序遍历得到二叉树
例子:3 2 1 4 5 7 6 (中序遍历) 3 1 2 5 6 7 4 (后序遍历)思路:整体来说就是一个递归分治的思想重点在后序遍历上,由后序遍历的定义知,后序遍历的最后一项肯定为根结点,然后在中序遍历中找到这一项(假设无重复项)如:由 3 1 2 5 6 7 4 (后序遍历)知该二叉树的根结点为4,因此将3 2 1 4 5 7 6 (中序遍历) 分割为3 2 1||原创 2017-08-25 15:51:30 · 592 阅读 · 0 评论 -
dp问题——Philosophers Stone
自底而上,dp问题One of the secret chambers in Hogwarts is full of philosopher’s stones. The floor of the chamber is covered by h × w square tiles, where there are h rows of tiles from front (first row) to原创 2017-07-22 16:59:37 · 370 阅读 · 0 评论 -
暴力搜索
#include#include#include#include#include#include#include#includeusing namespace std;/*题目描述玛雅人有一种密码,如果字符串中出现连续的2012四个数字就能解开密码。给一个长度为N的字符串,(2=输入描述:输入包含多组测试数据,每组测试数据由两行组成。原创 2017-07-16 15:39:08 · 556 阅读 · 0 评论 -
利用sort对结构体排序
#include#include#include#include#include#include#includeusing namespace std;/*题目描述用一维数组存储学号和成绩,然后,按成绩排序输出。输入描述:输入第一行包括一个整数N(1<=N<=100),代表学生的个数。接下来的N行每行包括两个整数p和q,分别代表每个学生的学号和成绩。输出描述:按照学原创 2017-07-16 10:50:04 · 602 阅读 · 0 评论 -
leetcode 94. 二叉树的中序遍历(Java 二叉树中序非递归遍历)
leetcode 94. 二叉树的中序遍历(Java 二叉树中序非递归遍历)很久没写算法,一个水题竟然写了好久class TreeNode{ int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; }}/** * 二叉树非递归中序遍历...原创 2018-05-04 16:19:35 · 1234 阅读 · 0 评论