算法
half-half
渣渣w
展开
-
leetcode-5.18-贪心(435)
leetcode435 无重叠区间解法一(贪心):按照区间右节点排序,判断左节点是否重叠。class Solution {public: int eraseOverlapIntervals(vector<vector<int>>& intervals) { int len = intervals.size(); if(len==0) return 0; sort(intervals.begin(),inter原创 2021-05-19 10:53:28 · 99 阅读 · 1 评论 -
leetcode-5.17-贪心(135)
135. 分发糖果 解法一:两遍遍历,从左向右与从右往左class Solution {public: int candy(vector<int>& ratings) { int N = ratings.size(); vector<int>candies(N,1); int mycandies = 0 ; //左规则 for(int i=1;i<N;i++){ .原创 2021-05-18 00:54:16 · 81 阅读 · 0 评论 -
【动态规划】练习
一些碎片式的总结,找找题感啥的~超棒的动态规划入门文章->点击打开链接1.最长公共子序列0:len1 len[n][0]=0;0:len2 len[0][n]=0;if(s1[i]==s2[j]) len[i][j]=len[i-1][j-1]+1;else len[i][j]=max(len[i-1][j],len[i][j-1])2.最长上升子序列for( int i...原创 2018-03-31 22:17:33 · 270 阅读 · 0 评论 -
【分治】二分查找
已知有序的序列,比如:2,3,3,5,9,9,9,12,12,13,15,22,22,22,22,25,25,23,91,95有整数x,比如: x=23要求找到一个刚好比x稍微大一点的元素位置#include<iostream>using namespace std;#define maxn 10000int a[maxn];void get_pos(int x,int n){...原创 2018-03-31 22:02:25 · 282 阅读 · 0 评论 -
【数学】尼姆堆
有3堆硬币,分别是3,4,5二人轮流取硬币。每人每次只能从某一堆上取任意数量。不能弃权。取到最后一枚硬币的为赢家。求先取硬币一方有无必胜的招法。异或和:是0我必输如果不是0 不然就可以改变某一堆 让对方为0找到最高位的1,观察贡献者。都有可能让结果为0;源代码:#include<iostream>using namespace std;void nimu(int a[],int l...原创 2018-03-25 17:24:29 · 576 阅读 · 0 评论 -
【数学】快速筛选素数
#include<iostream>#include<math.h>using namespace std;int a[10000000];int main(){ for(int i=2;i<10000000;i++){ if(a[i]==1) continue; for(int j=2;j*i&...原创 2018-03-25 17:23:03 · 163 阅读 · 0 评论 -
【数学】一步之遥
从昏迷中醒来,小明发现自己被关在X星球的废矿车里。矿车停在平直的废弃的轨道上。他的面前是两个按钮,分别写着“F”和“B”。小明突然记起来,这两个按钮可以控制矿车在轨道上前进和后退。按F,会前进97米。按B会后退127米。透过昏暗的灯光,小明看到自己前方1米远正好有个监控探头。他必须设法使得矿车正好停在摄像头的下方,才有机会争取同伴的援助。或许,通过多次操作F和B可以办到。矿车上的动力已经不太足,黄...原创 2018-03-25 17:22:14 · 1751 阅读 · 0 评论 -
【数学】天平称重
用天平称重时,我们希望用尽可能少的砝码组合称出尽可能多的重量。如果只有5个砝码,重量分别是1,3,9,27,81则它们可以组合称出1到121之间任意整数重量(砝码允许放在左右两个盘中)。本题目要求编程实现:对用户给定的重量,给出砝码组合方案。例如:用户输入:5程序输出:9-3-1用户输入:19程序输出:27-9+1要求程序输出的组合总是大数在前小数在后。可以假设用户的输入的数字符合范围1~121。...原创 2018-03-25 17:21:02 · 679 阅读 · 0 评论 -
【博弈】填字母游戏
K大师在纸上画了一行n个格子,要小明和他交替往其中填入字母。1. 轮到某人填的时候,只能在某个空格中填入L或O2. 谁先让字母组成了“LOL”的字样,谁获胜。3. 如果所有格子都填满了,仍无法组成LOL,则平局。小明试验了几次都输了,他很惭愧,希望你能用计算机帮他解开这个谜。本题的输入格式为:第一行,数字n(n<10),表示下面有n个初始局面。接下来,n行,每行一个串,表示开始的局面。 比...原创 2018-03-25 16:57:01 · 418 阅读 · 0 评论 -
【博弈】取球游戏
今盒里有n个小球,A、B两人轮流从盒中取球。每个人都可以看到另一个人取了多少个,也可以看到盒中还剩下多少个。两人都很聪明,不会做出错误的判断。每个人从盒子中取出的球的数目必须是:1,3,7或者8个。轮到某一方取球时不能弃权!A先取球,然后双方交替取球,直到取完。被迫拿到最后一个球的一方为负方(输方) 编程确定出在双方都不判断失误的情况下,对于特定的初始球数,A是否能赢?源代码:#includ...原创 2018-03-25 16:55:55 · 234 阅读 · 0 评论 -
【博弈】高僧斗法
古时丧葬活动中经常请高僧做法事。仪式结束后,有时会有“高僧斗法”的趣味节目,以舒缓压抑的气氛。 节目大略步骤为:先用粮食(一般是稻米)在地上“画”出若干级台阶(表示N级浮屠)。又有若干小和尚随机地“站”在某个台阶上。最高一级台阶必须站人,其它任意。(如图所示)两位参加斗法的法师分别指挥某个小和尚向上走任意多级的台阶,但会被站在高级台阶上的小和尚阻挡,不能越过。两个小和尚也不能站在同一台阶,也...原创 2018-03-25 16:53:21 · 302 阅读 · 0 评论