水题
文章平均质量分 54
Mininda
云雀叫了一整天
展开
-
【Leetcode 70】爬楼梯 分治
显而易见的斐波那契数列,为了效率我们用O(logn)的矩阵快速幂来写。值得注意的是,如果是人可以从0爬到1~n任意一个楼梯,答案就是2^(i-1)可以归纳法证明。#define ll long long#define Mod 1000000007class Solution {private: ll M[2][2]={1,1,1,0}; ll F[2][2]={1,1,1,0};public: void Mutiply(ll F1[2][2],ll F2[2][2.原创 2021-06-04 10:04:24 · 309 阅读 · 0 评论 -
【RandixSort】基数排序实现
感觉网上一直没看到基数排序好的代码,就照着算法导论上的实现一遍。#include<vector>#include<cstring>using namespace std;class Solution{public: int GetMax(int n,int *a) { int ret=0; for (int i=0;i<n;i++) if (a[i]>ret) ret=a[i]; return ret; } void Randix原创 2021-06-04 09:56:58 · 183 阅读 · 0 评论 -
【Leetcode 105】从前序与中序遍历序列构造二叉树
了解书结构的基础题,此题的关键是在于找到根的位置。在前序遍历(根左右)中,根永远是第一个,通过确定了根,我们可以通过在后序遍历中找到根的位置来判断出左子树和右子树。通过递归解决问题/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left.原创 2021-06-01 17:33:48 · 127 阅读 · 0 评论 -
【poj3263】Tallest Cow 前缀和
前缀和水题。因为求最优所以默认最大,每次给出了一对关系,我们都可以知道中间的数要小。前缀和处理一下即可。#include<iostream>#include<map>#include<algorithm>#include<cstdio>#include<cstring>using namespace std;ma...原创 2018-07-21 23:10:49 · 297 阅读 · 0 评论 -
【USACO3-1-5】邮票 瞎搞
原题#include<iostream>#include<cstdio>#include<cstring>using namespace std;#define inf 0x3f3f3f3f#define N 10000009int t[N],a[N];int n,k;int main(){ memset(t,inf,sizeo...原创 2018-05-22 20:48:49 · 144 阅读 · 0 评论 -
【USACO3-1-3】丑数 枚举
原题对于每一个新的丑数,都是之前的某一个丑数集合里的数乘以之前求出来的丑数得来的。将所有的情况枚举出来,判断出最小的一个大于i-1的丑数就是第i个丑数。#include<iostream>#include<cstdio>#include<cstring>using namespace std;#define N 1000009#define inf...原创 2018-05-22 20:43:56 · 319 阅读 · 0 评论 -
[USACO2.1] 三值的排序 乱搞
传送门:嘿原题在这用一个num[][]数组记录应该在i位置的j有多少个,然后每次发现i在j中,j在i中的情况这种两个数的位置调换的情况,只需交换一次(min(num[i][j],num[j][i])),剩下的都是三个数位置调换的,这种情况需要交换3次//USACO2.1 三值的排序//by dadatu#include#include#include#includeusing原创 2018-01-08 09:07:55 · 391 阅读 · 0 评论 -
【UVa11292】Dragon of Loowater 瞎搞
题意:给出n个数和m个数,问如何从m个数中选出n个数使得每个数都大于n里面的一个数,求选出的n个数的最小和。将n个数和m个数排个序,从头开始找,如果大于就加进来。算法正确性显然。int main(){ while(scanf("%d%d",&n,&m)==2 && (n || m)) { int cur=0,ans=0; memset(a,0,sizeof(a原创 2017-12-31 17:57:31 · 328 阅读 · 0 评论 -
[USACO1.2]挤牛奶Milking Cows 差分
瞅一眼数据范围发现硬搞可能会TLE,所以用差分。res[]差分数组记录区间状态,最后扫一遍统计一下即可。原创 2017-11-26 20:51:28 · 391 阅读 · 0 评论 -
[USACO1.5]回文质数 Prime Palindromes
易证偶数位的回文素数只有11,其他的都为11的倍数。所以可以打个10^7素数表,然后逐个判断是否为回文数即可。原创 2017-11-22 20:25:07 · 390 阅读 · 0 评论 -
[USACO1.2]方块转换 Transformations 模拟
很显然,23可以由1得,56可以由14得,所以只要写两个函数就好啦。原创 2017-11-26 21:49:32 · 437 阅读 · 0 评论 -
[USACO1.1]黑色星期FridaytheThirteenth
[USACO1.1]黑色星期FridaytheThirteenth题目描述13号又是一个星期五。13号在星期五比在其他日子少吗?为了回答这个问题,写一个程序,要求计算每个月的十三号落在周一到周日的次数。给出N年的一个周期,要求计算1900年1月1日至1900+N-1年12月31日中十三号落在周一到周日的次数,N为正整数且不大于400.这里有一些你要知道的:1、1900年1月1日原创 2017-11-21 20:30:05 · 426 阅读 · 0 评论 -
[USACO1.4]等差数列Arithmetic Progressions 枚举
枚举前两个数,找一下即可。原创 2017-12-04 20:24:41 · 407 阅读 · 0 评论 -
[USACO1.3]虫洞wormhole 暴力 (第一章完结)
题意:给出n个虫洞,问有多少种配对使从某一列第一行出发会陷入环。 暴力配对暴力走。#include#include#include#includeusing namespace std;struct node{int x,y;}a[20];int b[20],visit[20];int n,ans=0;bool cmp(node pp,node qq){原创 2017-12-12 19:11:35 · 483 阅读 · 0 评论 -
【洛谷1464】Function 递归
Function题目描述对于一个递归函数w(a,b,c)如果a<=0 or b<=0 or c<=0就返回值1.如果a>20 or b>20 or c>20就返回w(20,20,20)如果a<b并且b<c就返回w(a,b,c-1)+w(a,b-1,c-1)-w(a,b-1,c)其它别的情况就返回w(a-1,b,c)+w(a-1...原创 2017-11-22 18:18:22 · 2256 阅读 · 0 评论 -
【清北学堂济南刷题班】集合
集合【问题描述】给定一个可重集合,一开始只有一个元素0 。然后你可以操作若干轮,每一轮,你需要对于集合中的每个元素 x 进行如下三种操作之一:1、将 x 变为 x +1。2 、将 x 分裂为两个非负整数 y,z,且满足 x = y + z 。3、什么都不做。每一轮,集合中的每个元素都必须进行上面三个操作之一。对于一个最终的集合,你的任务是判断至少进行了多少轮。【原创 2017-10-31 18:40:08 · 1859 阅读 · 1 评论 -
【NOIP2004(普及组)】花生采摘 模拟
花生采摘题目描述鲁宾逊先生有一只宠物猴,名叫多多。这天,他们两个正沿着乡间小路散步,突然发现路边的告示牌上贴着一张小小的纸条:“欢迎免费品尝我种的花生!――熊字”。鲁宾逊先生和多多都很开心,因为花生正是他们的最爱。在告示牌背后,路边真的有一块花生田,花生植株整齐地排列成矩形网格(如图1)。有经验的多多一眼就能看出,每棵花生植株下的花生有多少。为了训练多多的算术,鲁宾逊先生说:“你先找出...原创 2017-11-08 10:43:07 · 921 阅读 · 0 评论 -
【bzoj1968】 [Ahoi2005]COMMON 约数研究
1968: [Ahoi2005]COMMON 约数研究Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 2877 Solved: 2146[Submit][Status][Discuss]DescriptionInput只有一行一个整数 N(0 < N < 1000000)。Output只有一行输出,为...原创 2017-11-06 22:15:42 · 311 阅读 · 0 评论