case when then 随手练_1】的更多相关文章

CASE WHEN THEN随手练,就当做练习指法吧 --drop table tbStudent GO Create table tbStudent( studentId int identity(1,1), fSex varchar(12), fProvince varchar(32) ) GO INSERT INTO tbStudent(fsex,fProvince) values('男','江西省'), ('男','广东省'), ('男','浙江省'), ('女','江西省'), ('男…
枚举 #include <iostream> using namespace std; int main() { ; cin >> k; ; i < ; i++) { ) { ) * ; ; j <; j++) { ) { ) * ; ; l < ; l++) { ) { cout << i << j << l << endl; flag = ; } } } } } } % k == ) { cout <<…
SUBSTRING / CHARINDEX_函数随手练_2环境:MSSQL 2014(AdventureWorks2008R2附加到2014中的表 Location) /* Learning SQL on SQL Server2005 */ --要将名字中带有空格的,使用空格前面部分内容,加上一个 , 再加空格后面的第1个字符 -- 名字中不带空格的,直接使用名字的全部内容,加上一个, (有待继续) SELECT * FROM Production.Location --------------…
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=93 一堆科学家研究猩猩的智商,给他M种长方体,每种N个. 然后,将一个香蕉挂在屋顶,让猩猩通过 叠长方体来够到香蕉. 现在给你M种长方体,计算,最高能堆多高. 要求位于上面的长方体的长要大于(注意不是大于等于)下面长方体的长,上面长方体的宽大于下面长方体的宽. 解题: 1.一个长方体,可以有6种不同的摆法.长宽排序,就可以只存下来三种,需要的是高的唯一性. 2.将所有…
坑了老子半天,结果是 float 范围不够!!! 基本思想: 开一个符号栈,一个数字栈: 碰到数字就入栈,碰到符号就与栈顶符号进行对比,如果当前符号优先级小于栈顶符号,数字栈弹出两个数进行栈顶符号运算,并将结果压回数字栈: 如果当前符号优先级大于栈顶符号,再将当前符号入栈. 关于优先级,* / 比 + - 高是没得说的,然后规定两个*号(包括/号),前面的优先级更大.当然会造成一些问题(如:5 / 3 * 3会得出一个小数),但这是没办法的. 符号栈初始放置一个‘#’,并规定 ‘#’,优先级低于…
 N!Again Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6338    Accepted Submission(s): 3325 Problem Description WhereIsHeroFrom:             Zty, what are you doing ?Zty:                      …
http://acm.hdu.edu.cn/showproblem.php?pid=1078 题意: 一张n*n的格子表格,每个格子里有个数,每次能够水平或竖直走k个格子,允许上下左右走,每次走的格子上的数必须比上一个走的格子的数大,问最大的路径和. 记忆化搜索 #include <iostream> #include <string.h> #include <stdio.h> using namespace std; ][] = { {, },{ -, }, {, }…
To the Max http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1074 动态规划(O(n^3)) 获得一维数组的最大子数组和:(O(n)) int MaxSubSum(int* arr, int n) { << , t = ; ; i < n; i++) { t += arr[i]; if (t > max) max = t; ) { t = ; } } return max; } 目标: 通过一维数…
1.暴力版 本质上就是求连通块数量,那么DFS或者BFS都行,暴力跑. 写完发现题目比较特殊,m次提问,那每次都暴力搜,肯定是要跑死了. #include <iostream> #include <string.h> #include <stdio.h> int cnt,n; ][] = { {,},{-,},{,},{,-} }; ][]; ][]; void dfs(int x, int y) { ; k < ; k++) { ], toy = y + dir…
1. 单词接龙 https://www.luogu.org/problemnew/show/P1019 题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如 beastbeast和astonishastonish,如果接成一条龙则变为beastonishbeastonish,另外相邻的两部分不能存在包含关系,例如atat 和 at…
高弗雷勋爵 题目链接:https://code.mi.com/problem/list/view?id=113 这个解法比较暴力,主要需要注意的是一颗子弹 弹死两个及以上的情况. #include <iostream> #include <string> #include <stdio.h> #include <algorithm> #include <vector> using namespace std; ]; void infect(int…
题目链接:https://leetcode.com/problems/predict-the-winner/ 1.暴力递归 当前数组左边界:i,右边界:j: 对于先发者来说,他能取到的最大值是:max(arr[i] + second(arr, i + 1, j), arr[j] + second(arr, i, j - 1)); (arr[i] + 作为后发者,在 i+1 到 j 上取得的值),(arr[j] + 作为后发者,在 i 到 j-1 上取得的值) 中大的一个. 对于后发者来说,他是被…
思路:dp[i]代表到第i位的最小值,枚举它的前几位,求出最小值. 转移方程:dp[ i ] = min(dp[ i ], dp[ j - 1 ] + 1 ) ; 本来觉得,代码加深部分可以提前break,其实不行,有些特例,比如:oioooo oio ooo是最少的,两个:提前break的话,会判断成oi oooo,三个. 最开始用string写的,一直超时,改成char数组才过的了. #include <iostream> #include <string.h> #includ…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5015 看到这个限时,我就知道这题不简单~~矩阵快速幂,找递推关系 我们假设第一列为: 23 a1 a2 a3 a4 则第二列为: 23*10+3 23*10+3+a1 23*10+3+a1+a2 23*10+3+a1+a2+a3 23*10+3+a1+a2+a3+a4 进一步转化可以得到: 代码: #include <iostream> #include <string.h> usin…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1210 模拟的题目真不知道怎么写的话,就把真实情况展示出来,有图才有真相: 测试代码: #include <iostream> using namespace std; int main() { int N; cin >> N; * N + ]; * N + ]; ; i <= * N; i++) { a[i] = i; } ; i <= * N; i++) { b[(i *…
题目链接:https://www.luogu.org/problemnew/show/P1002 题目还算良心,提醒了结果可能很大,确实爆了int范围, 这是一开始写的版本,用递归做的,先给地图做标记,每到一个点,这个点可以走的话,选择向下走还是向右走,但是会超时. #include <iostream> using namespace std; ][]; int M, N; ; void move(int i, int j) { if (i == N && j == M) {…
题目链接:https://www.luogu.org/problemnew/show/P2945 (原题 USACO) 要求钱最少,就是试着让M和B的离散程度最小(我自己脑补的,就是总体更接近,我不知道数学上这样该不该叫离散程度),那显而易见就是升序. 一开始想着可能有这种情况,有高度相同,但是对不上的,其实是没有差别的. 原高度:2 2 3 4 5 改高度:2 3 4 5 6 证明看这个:https://www.cnblogs.com/Leohh/p/7648607.html #include…
1.普通版 第一眼看到这个题,我脑海里就是,“我们是不是在哪里见过~”,去年大一刚学C语言的时候写过一个类似的题目,写了九重循环....就像这样(在洛谷题解里看到一位兄台写的....超长警告,慎重点开) #include <stdio.h> #include <cstdlib> int main() { ]; ] = ; i[] <= ; i[]++) { ] = ; i[] <= ; i[]++) { ; ] == i[]) p1 = ; ) { ] = ; i[]…
#include <iostream> #include <algorithm> #include <string.h> using namespace std; ]; int main() { int N; ,, }; while (cin >> N) { memset(dp, , sizeof(dp)); ; i <= N; i++) dp[i] = ; ; i <= ; i++) { for (int j = a[i]; j <= N…
P1215 [USACO1.4]母亲的牛奶 Mother's Milk 洛谷 P1215:https://www.luogu.org/problemnew/show/P1215 解题思想:DFS 大一校内编程比赛的题目了,当时毛都没看懂,现在再拿出来,不能说小意思吧,那样说好像太狂了,中等意思吧 一个杯子往另一个杯子里倒,分两种情况. 假设A杯,B杯(大小关系是不影响的,反过来一样): 需要注意的就是,添加一个flag数组,标记已经做过的状态. #include <iostream> #inc…
普通时间安排 HDU-2037 :http://acm.hdu.edu.cn/showproblem.php?pid=2037 选取结束时间早的策略. #include <iostream> #include <algorithm> #include <vector> using namespace std; class T { public: int start, end; T(int s, int e) { start = s; end = e; } bool op…
HDU 2527 :http://acm.hdu.edu.cn/showproblem.php?pid=2527 哈夫曼树,学完就忘得差不多了,题目的意思都没看懂,有时间复习下,看了别人的才知道是怎么回事. 贪心的题目,当总代价(要求最少)是由子代价累加或累乘出来,就可以考虑用哈夫曼来贪心. 题意: 就是给你一个字符串如:12 helloworld 统计出其中 d:1个,e:1个,h:1个,l:3个,o:2个,r:1个,w:1个,然后用一个数组保存起来a[7]={1,1,1,1,1,2,3};然…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2609 题目没看懂,就想百度找下,结果 多数人就写个 最小表示法,就po代码了,看了这个博主才明白题目是啥意思:https://blog.csdn.net/piaocoder/article/details/48447193 ,每个01序列都作为一串 “项链”,能够通过循环转换而成的算同一个,比如:0110和0011算同一个,就要把所有序列转换为相同的标准:循环的同构字符串S’中字典序最小的一个. 其…
LintCode 433: https://www.lintcode.com/problem/number-of-islands/description LintCode 434: https://www.lintcode.com/problem/number-of-islands-ii/description(问法变了一下,思想还是一样的.) 解题思想:“感染“,从头开始遍历,碰到1,res++,开始感染,把所有相邻的1全部变成0,遍历完成,res就是结果. 题目是在B站上看到的一个老师的讲解…
POJ - 2676 : http://poj.org/problem?id=2676: 解题思想 (大力出奇迹): 1. 依次在空格里面填上“1~9”,并检查这个数字是否合法(其所在的行.列,以及3X3的子区域里不存在重复的数字).如果合法,则前进到下一个格子. 2. 如果在某个格子里,从“1”到“9”都不合法,这说明前面某个格子填错了.这时就回退到上一格,继续试.例如,如果上一格已填的数字是3,就继续试4,5,6,… 是否合法.如果找到一个合法的数字,则又前进到下一格.如果找不到,说明前面还…
知识点:前缀树.典型的前缀树模板. 这是用next[26]数组的版本,超内存了.(后来发现,用C++交不会超,G++就会超) #include <iostream> #include <malloc.h> #include <string> using namespace std; typedef struct node{ int pass; ]; } *trieTree; trieTree init() { trieTree t = (trieTree)malloc(…
方法一:T(n)=O(n),S(n)=O(n) 走完一遍链表,每个值入栈,之后再走一遍链表,和每次弹出的栈顶进行比较. 核心: LNode *p = l->next; while (p) { s.push(p->data); p = p->next; } p = l->next; while (p) { if (p->data != s.top()) { cout << "fuck" << endl; break; } s.pop(…
题目从这儿看到的 : https://mp.weixin.qq.com/s/2OXg67MfBuQjDPAJxxD8rQ,但是公众号上讲错了,问题还挺严重的. 题目知识点:桶排序. 题目:有一个无序数组2,3,1,4,6,排序后是1,2,3,4,6,最大差值是 6 - 4 = 2. 先找到数组的max和min. 创建一个长度为N+1的桶,前N个桶,(max-min)/N得到范围,左闭右开,最后一个桶只存储最大值. 除去第一个和最后一个,也就是N-1个数往N个桶里放,那么至少会有一个桶为空.(鸽笼…
有一个数据多维分析的任务: 日志的周UV: APP的收集量及标注量,TOP 20 APP(周UV),TOP 20 APP标注分类(周UV): 手机机型的收集量及标注量,TOP 20 机型(周UV),TOP 20 手机厂商(周UV): 初始的解决方案:Spark读取数据日志,然后根据分析需求逐一进行map.distinct.reduceByKey得到分析结果.但是,这种方案存在着非常大的缺点--重复扫描数据源多次. 1. Pig Pig提供cube关键字做OLAP,将dimension分为了两类:…
对RDD的学习进行一下整理 RDD:基于内存的集群计算容错抽象 分布式内存抽象的概念---弹性分布式数据集(RDD),它具备MapReduce等数据流模型的容错特性,并且允许开发人员在大型集群上执行基于内存的计算. 为了有效地实现容错,RDD提供了一种高度受限的共享内存,即RDD是只读的,并且只能通过其他 RDD上的批量操作来创建. RDD基于工作集的应用,同时具有数据流模型的特点:自动容错.位置感知调度和可伸缩性.允许用户在执行多个查询时显式地将工作集缓存在内存中,后续的查询能够重用工作集,提…