黑恶势力
almz654321
这个作者很懒,什么都没留下…
展开
-
【常用模板】 线段树单点操作
输入 第一行两个整数n,m,第二行n个整数表示初始时的数组A[ ]; 接下来m行,每行3个整数a,b,c,如果a=1,那么输出A[b]~A[c]中最大的数 若a=2,那么将A[b]改为c 输出 每行输出一个整数,对应每一个操作a=1超级简单的线段树模板题,一遍就过了,子程序太多,变量更多,容易搞混很尴尬,就在几周前的noip中,有一个dalao给我们得瑟说他会线段树,原创 2016-12-23 16:29:57 · 314 阅读 · 0 评论 -
浴谷八连测 Round#1 T1
n!在k进制下0的个数40分不用说了吧。。暴力+10进制的特判#include <iostream>using namespace std;int num[100];int main(){ int n,k; cin>>n>>k; if(k==10) { int ans=0,flag[6]={0,0,0,0,0,0}; for(i原创 2017-10-15 17:08:55 · 299 阅读 · 0 评论 -
TB 16 10 29 AM
T1两个时间,,求时间差,变态的是要求毫秒,所以会爆int,要乘1ll 有闰年什么的,还有什么“一三五七八十腊,三十一天永不差”…… 捣鼓了两个小时,最后80分,还是不会搞闰年……#include <iostream>#include <cstdio>using namespace std;unsigned long long ans=0;short mon[13]={0,31,28,3原创 2017-10-06 11:34:45 · 184 阅读 · 0 评论 -
组合数
好简单啊…… 就是分解质因数 只需要分解2 和 5 因为只有2*5是等于10的 然后分子分母约掉 看最后对2和5的数量取min#include<iostream>#include<algorithm>#include<cstring>using namespace std;int t,n,m;long long sum[4],ans;long long p;void work原创 2017-10-05 15:22:52 · 218 阅读 · 0 评论 -
大深坑
一些错误有大的 也有小的恩2017年10月25日 一道水题 NOIP T1难度 不幸WA了10个点 原因 在运算时没有进行特判 超出所需要的运算次数2017年10月24日 一道水题 NOIP T1难度 不幸WA了1个点 原因 特殊情况的特判 要多考虑几种情况 避免失误2017年10月22原创 2017-10-25 10:37:44 · 377 阅读 · 0 评论 -
chocolate
题意大概就是一根长度为n的巧克力,要分成全部为1的巧克力,问最多可能有多少次分出来的是相等的两段巧克力 不会,部分分 正解 找规律,可以发现ans=n-c(n),(c(n)为n的二进制数中1的个数)#include <cmath>#include <cstdio>#include <cstdlib>#include <iostream>#include <algorithm>using原创 2017-10-07 17:22:27 · 265 阅读 · 0 评论 -
大数阶乘取模
水了90分。。。 如果不会正解的话,直接暴力拿分,无脑暴力可以拿到90分 正解分块打表暴力就是直接求阶乘然后取模。。。 加一个比较有用的特判:如果n>=p,那么n的阶乘的因子中一定有p,n的阶乘膜p一定等于0#include <iostream>#include <cstdio>using namespace std;long long n,p;int js(int n){ l原创 2017-10-07 10:22:18 · 7828 阅读 · 0 评论 -
度度熊与邪恶大魔王
dp… 因为防御力的范围很小,最大才是10,所以就可以枚举防御力,从1到10,然后如果防御大于等于造成的伤害的话就直接continue…如果防御小于伤害的话就砍,然后如果用这一个技能就把它砍死了,那么这就是使用晶石最少的技能,否则就通过前面的dp值推出当前的dp值(dp[i][j]=dp[i-mul][j]+con[k];) dp[i][j]表示防御力为j,打出i点伤害所需要的最少的晶石#inc原创 2017-08-18 15:12:33 · 197 阅读 · 0 评论 -
UER #2 手机的生产
挣扎了好久终于A了 大佬说这是一个模拟题,然后果断发现看不懂。。。 大佬给我们讲(fa)了(le)一(ti)下(jie),大概就是把这个表达式用 | 分开,分成每份只有 & ,然后对于只有”&&”的情况,k个fork()的表达式会有k种方案返回0,1种方案返回1(找规律)。最后从左到右计算i到tot的方案数(这应该是dp啊)#include <bits/stdc++.h>#define MOD原创 2017-08-18 10:41:58 · 418 阅读 · 0 评论 -
蛋疼度度熊
百度之星初赛B赛T6 先把这些线段以左端点升序排列,然后把重叠的,重合的,还有一些什么特殊的情况都处理出来,把连续的几段处理成一段(dalao说可以不处理) 然后开一个队列,从前往后压入队列,如果出现了断开的部分,就用m比较,如果小于m,就把m减去这一段的长度,然后压入队列,如果大于m,就弹出队首元素,增加m,直到这一段的长度小于m进行更新,在这期间,要不断的进行更新ans的值, 要注意的是一原创 2017-08-17 16:56:17 · 3153 阅读 · 0 评论 -
【倍增】 luogu 1613 跑路
懒得贴题自己去看 一道倍增模板题,可以练习代码熟练度 开一个数组f[i][j][k]表示从i到j用2k2^k能否到达,然后枚举中间点,如果i到mid可以用2k−12^{k-1}步到达,mid到j可以用2k−12^{k-1}步到达,那么从i到j就可以用2k2^k步到达,代码如下 for(int mid=1;mid<=50;mid++) for(int i=1;i<=50;i+原创 2017-08-16 20:03:26 · 216 阅读 · 0 评论 -
【模板】 字符串哈希
哈希(Hash)算法,即散列函数。它是一种单向密码体制,即它是一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。同时,哈希函数可以将任意长度的输入经过变化以后得到固定长度的输出。哈希函数的这种单向特征和输出数据长度固定的特征使得它可以生成消息或者数据。纯裸的模板题 因为要使字符串的哈希值各不相同,所以要取一些奇奇怪怪的质数进行MOD,比如19260817(逃) 常见的质数 1e9+7原创 2017-08-16 14:41:33 · 3670 阅读 · 0 评论 -
最小网络最大流
题目描述如题,给出一个网络图,以及其源点和汇点,每条边已知其最大流量和单位流量费用,求出其网络最大流和在最大流情况下的最小费用。输入输出格式输入格式:第一行包含四个正整数N、M、S、T,分别表示点的个数、有向边的个数、源点序号、汇点序号。接下来M行每行包含四个正整数ui、vi、wi、fi,表示第i条有向边从ui出发,到达vi,边权为wi(即该边最大流量为原创 2017-05-03 15:27:09 · 620 阅读 · 0 评论 -
bzoj1066 蜥蜴
1066: [SCOI2007]蜥蜴Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 3916 Solved: 1965[Submit][Status][Discuss]Description 在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上站着一些蜥蜴,你的任务是让尽量多的蜥蜴逃到边界外。 每行每列中相邻石柱的距离原创 2017-04-28 16:55:13 · 263 阅读 · 0 评论 -
【模板】 莫队算法
莫队算法??这个算法是由之前的国家队队长莫涛巨神(Orz….%%%)发明的,所以尊称莫队算法。莫队是啥??如果我们知道区间[L,R],就能在O(1)求出[L−1,R],[L+1,R],[L,R−1],[L,R+1]的话,那就可以用莫队算法了。莫队咋搞?? 1):排序,以左段点所在的块为第一关键字,以右端点为第二关键字 2):从左往右处理询问(离线) 3):不断调整l,r的位置原创 2017-03-31 15:44:50 · 1603 阅读 · 1 评论 -
【Luogu】 食物链
→→→ 题目 ←←←我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加continue; 我忘了加conti原创 2017-02-26 10:10:00 · 301 阅读 · 0 评论 -
【模板】 欧拉路 欧拉回路
啥是欧拉路(欧拉回路)?? 如果给定无孤立结点图G,若存在一条路,经过图中每边一次且仅一次,这条路称为欧拉路; 如果给定无孤立结点图G,若存在一条回路,经过图中每边一次且仅一次,那么该回路称为欧拉回路。 存在欧拉回路的图,称为欧拉图。欧拉路(欧拉回路)有啥用??一笔画问题 即寻找欧拉路或欧拉回路 裸的模板题 骑马修栅栏,很裸很裸很裸欧拉路(欧拉回路)怎么写??如果寻找欧拉回路,原创 2017-03-03 17:25:13 · 1857 阅读 · 0 评论 -
【常用模板】 线段树区间操作
线段树 非常简单的线段树区间操作,比单点操作难那么一点点(一点点?)但是……似乎……并没有这么简单,这么多的子程序,检查比写都难,可我一直把想要求的区间左右端点和当前端点混着用,就一直不过,很尴尬#include#include using namespace std;int a[110000];struct tree{ long long l,r,sum,addi,len;}原创 2016-12-30 21:19:06 · 229 阅读 · 0 评论 -
10.26 dp练习
采药dp中的01背包 最经典的问题了吧 problem 1048#include <iostream>#include <cmath>#include <cstdio>using namespace std;int f[1100][1100];int w[1100],v[1100];int main(){ int n,m; cin>>m>>n; for(int原创 2017-10-26 17:26:33 · 415 阅读 · 0 评论