4 almz654321

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 13w+

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

大深坑

一些错误有大的 也有小的恩2017年10月25日      一道水题 NOIP T1难度      不幸WA了10个点      原因 在运算时没有进行特判 超出所需要的运算次数2017年10月24日      一道水题 NOIP T1难度      不幸WA了1个点      原因 特殊情况的特判 要多考虑几种情况 避免失误2017年10月22

2017-10-25 10:37:44

订餐题意有几道菜可以选择着吃 对于吃的第i道菜 美味程度为a[i]*i 求连续吃k道菜的最大的美味值 处理前缀和 注意爆int#include <iostream>#include <cstdio>using namespace std;long long a[200001],s[200001];int main(){ freopen("dish.in","r",stdin);

2017-10-23 14:42:21

浴谷八连测 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

欧拉函数

欧拉函数φ(n)φ(n) 正常做法直接求#include<iostream>#include<cstdio>#define ll long longusing namespace std;ll n,ans;int main(){ cin>>n;ans=n; for(ll i=2;i*i<=n;i++) { { while(

2017-10-08 10:31:03

逆欧拉函数

难 φ(x)=x∏i=1n(1−1pi)φ(x)=x\prod_{i=1}^n(1-\frac{1}{p_i}) 逆推可得出x的关系式 x=φ(x)∗p1p1−1∗p2p2−1∗...∗pnpn−1x=φ(x)*\frac{p_1}{p_1-1}*\frac{p_2}{p_2-1}*...*\frac{p_n}{p_n-1} 然后 dfs//copy#include <cstdio>#i

2017-10-08 09:59:24

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

选数字

好难啊…… 一个矩阵,可以每一行或者每一列减去p,求k次操作后的最高RP值如果不会正解的话,最少是可以得到第三、四个点的分的,第一二个点可以随便的复杂度A掉正解?枚举取的行数 如果取了x行的话,那么一定取了k-x列(废话) 然后再操作的过程中,每一行或每一列都减P的话,对这一行或这一列的最值是没有影响的,所以可以过程中暂时不考虑减P造成的影响(最后要考虑) 因为我们是单独选的,没有考虑 行对

2017-10-07 16:34:04

大数阶乘取模

水了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

蜜汁最大完全平方数

以前有过类似的思路,就是奇数次方就减一,偶数次方就不管,然后最后快速幂统计一遍 这个题思路想出来就很简单,想不出来就完蛋 遇见了很多坑,先是long long ,没开long long结果得了5分。。。 然后是有一句应该是k=k>>1,结果写成了k>>1,结果k到了这里一直不变。。懵逼地调了好长时间。#include <iostream>#include <cstdio> using na

2017-10-06 16:50:59

TB 16 10 29 PM

T180分 最后两个点变态,没有初始序列,然后就不知道怎么输入了。。 前面点不算难,只不过原始序列中有三个同色球在一起的,比较坑,然后就算是模拟了, string里面有一些奇怪的函数,非常有用。。str.erase(pos,n); 删除从pos开始的n个字符str.insert(pos,s); 插入注意在消掉三个球之后看一下是否还可以继续消除#include<iostream>#includ

2017-10-06 15:54:44

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

天天和不可描述

不算难吧看到题就打算一步一步往前走,第一个左括号之前的全部输出,然后第二个左括号之前的反着输出,以此类推……但是这种思路很SB,完美的A掉没有括号嵌套的点,但是有嵌套的就会WA。。。重整思路?emmm 数着点左括号,记录每个左括号的位置,可以开一个栈来实现 然后读到右括号就开始把到前面的左括号之间的字符翻转。。。 然后?然后删除这个左括号继续进行上面的操作#include<iostream>

2017-10-05 15:36:13

组合数

好简单啊…… 就是分解质因数 只需要分解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

回型遍历

令f(n)为斐波那契数列第n项 求斐波那契数列的第f(n)项 【数据规模与约定】 对于70%的数据,1 ≤ n ≤ 10^5 。 对于100%的数据,1 ≤ T ≤ 10^3 ,1 ≤ n ≤ 10^100 样例输入 4 0 1 2 6 样例输出 0 1 1 21#include<cstdio>#include<cmath>#include<cstring>#i

2017-10-05 15:15:40

【清北学堂】dwarf

本来写的60分的代码,结果得了75分 就是dfs深搜,SPFA都忘了,也没看出来 深搜看看是买这个物品还是换这个物品,比较一下价格 很简单不说了#include<iostream>#include<cstdio>#include<cstring> using namespace std;int n,m,p;struct H{ int v,a,b;}thing[100007]

2017-08-22 11:09:35

【清北学堂】number

二分答案,先排一下序,再扫,同时搞一个指针倒着扫,计算比当前数小的数的个数,判断 蜜汁WA#include <iostream>#include <cstdio>#include <algorithm>using namespace std;long long k;int n,m;int num1[200001],num2[200001];int check(long long t)

2017-08-22 11:06:27

度度熊与邪恶大魔王

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

【百度之星】Chess

太简单不说 组合数 杨辉三角可以过 代码找不到了… 不贴了… 那场比赛就A了这一道题… - -完- -

2017-08-18 10:54:56

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

查看更多

勋章 我的勋章
    暂无奖章