长春现场赛
HDU 4821 

思路:这题周赛的时候没做出来,有点可惜了。要是当时记起来unsigned long long自己主动取模,然后提醒一下大帝的话,后续大帝就能过了。

唉,导致让他取了好多个模,最后还是WA了。太不机智了。

范逗了。

这题我是从前面哈希的。看到题解中从后面哈希。就是不爽,所以自己从前面哈希。

事实上都一样啦。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<map>
#include<queue>
#include<set>
#include<bitset>
#define INF 100007
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
char s[100005];
ull base[100010],hash[100010];
int main()
{
int m,l,i,j;//system("pause");
for(i=1,base[0]=1;i<100001;i++)
base[i]=base[i-1]*131ULL;
while(~scanf("%d%d",&m,&l))
{
map<ull,int>mm;
scanf("%s",s);
int sum=0,len=strlen(s);
for(i=1,hash[0]=0;i<=len;i++)
hash[i]=hash[i-1]*131+s[i-1]-'a'+1;
for(i=0;i<l&&i+m*l<=len;i++)
{
mm.clear();
for(j=i;j<m*l+i;j+=l)
mm[hash[j+l]-hash[j]*base[l]]++;
if(mm.size()==m) sum++;
for(j=m*l+i;j<=len-l;j+=l)
{
int head=j-m*l;
mm[hash[head+l]-hash[head]*base[l]]--;
if(mm[hash[head+l]-hash[head]*base[l]]==0)
mm.erase(hash[head+l]-hash[head]*base[l]);
mm[hash[j+l]-hash[j]*base[l]]++;
if(mm.size()==m) sum++;
}
}
printf("%d\n",sum);
}
return 0;
}

HDU 4815

这题逗逼了。刚開始大帝告诉我题意可能我理解错了。然后就用二进制枚举了。然后然后……然后就浪费了一个多小时一直WA,后面大帝发觉我理解错了之后。他又敲了背包才过……唉……发现题意真的是有点难理解了。到如今题意和解法还都是半知半懂的。

正确的解法是:总的情况是:1<<n,然后可组合的次数除以总的情况>=p的最小分数是正确答案。

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
long long dp[40005];
int main()
{
int t;
cin>>t;
while(t--)
{
int n,i,j,sum=0,a[45];
double p;
memset(dp,0,sizeof(dp));
dp[0]=1;
cin>>n>>p;
for(i=0;i<n;i++)
scanf("%d",a+i),sum+=a[i];
sort(a,a+n);
for(i=0;i<n;i++)
for(j=sum;j>=a[i];j--)
dp[j]+=dp[j-a[i]];
long long sum1=1LL<<n,sum2=0;
for(i=0;i<=sum;i++)
{
sum2+=dp[i];
if((double)sum2/(double)sum1>=p)
{
printf("%d\n",i);
break;
}
}
}
return 0;
}

组队赛第二场:字符串哈希+DP的更多相关文章

  1. 2018牛客网暑期ACM多校训练营(第二场) A - run - [DP]

    题目链接:https://www.nowcoder.com/acm/contest/140/A 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语言262144K ...

  2. Codeforces Round #543 (Div. 2) F dp + 二分 + 字符串哈希

    https://codeforces.com/contest/1121/problem/F 题意 给你一个有n(<=5000)个字符的串,有两种压缩字符的方法: 1. 压缩单一字符,代价为a 2 ...

  3. [SCOI2007]压缩(动态规划,区间dp,字符串哈希)

    [SCOI2007]压缩 状态:设\(dp[i][j]\)表示前i个字符,最后一个\(M\)放置在\(j\)位置之后的最短字串长度. 转移有三类,用刷表法来实现. 第一种是直接往压缩串后面填字符,这样 ...

  4. [比赛|考试]nowcoder NOIPpj组第二场

    nowcoder NOIPpj组第二场 370pts/400pts(100,100,100,70) rank3 给自己的反思:前3题都A了,T4O(N^2)不会就是不会(没准是我懒得推了),DP了70 ...

  5. 2019HDU多校第一场1001 BLANK (DP)(HDU6578)

    2019HDU多校第一场1001 BLANK (DP) 题意:构造一个长度为n(n<=10)的序列,其中的值域为{0,1,2,3}存在m个限制条件,表示为 l r x意义为[L,R]区间里最多能 ...

  6. 【2019多校第一场补题 / HDU6578】2019多校第一场A题1001Blank——dp

    HDU6578链接 题意 有一串字符串,仅由 {0,1,2,3}\{0, 1, 2, 3\}{0,1,2,3} 组成,长度为 nnn,同时满足 mmm 个条件.每个条件由三个整数组成:l.r.xl.r ...

  7. Vijos1680距离/openjudge2988计算字符串的距离[DP]

    描述 设有字符串X,我们称在X的头尾及中间插入任意多个空格后构成的新字符串为X的扩展串,如字符串X为”abcbcd”,则字符串“abcb_c_”,“_a_bcbcd_”和“abcb_c_”都是X的扩展 ...

  8. 2014百度之星预赛(第二场)——Best Financing

    2014百度之星预赛(第二场)--Best Financing Problem Description 小A想通过合理投资银行理財产品达到收益最大化.已知小A在未来一段时间中的收入情况,描写叙述为两个 ...

  9. 2018牛客暑期ACM多校训练营第二场(有坑未填)

    第二场终于等来学弟 开始(被队友带飞)的开心(被虐)多校之旅 A   run A题是一个递推(dp?)+前缀和 因为看数据量比较大 就直接上前缀和了 一个比较简单的递推 没有太多难点 签到题 需要注意 ...

随机推荐

  1. Java面试题精选(二)线程编程、数据库理论和Jdbc部分

    —— 线程编程.数据库理论和Jdbc部分内容 ——     数据库的开发应用想必是我们日常所碰到最多的知识点了,大致可分为:oracle.MySQL.SQL Server.Hadoop. NoSQL. ...

  2. Keepalived安装工具

    装keepalived前,要先检查主机上是否已经安装, ps -ef | grep keepalive 不检查的话.easy把前人装的东西覆盖掉,那么曾经弄的配置文件都没了比較麻烦. 下面都为root ...

  3. Android中Activity之间访问互传参数

    public class MainActivity extends Activity { private static final int OTHER = 1; @Override protected ...

  4. smartforms客制页格式

    smartforms需要打印非A4纸时需要手动创建页格式:创建事务代码:spad, 操作的时候需要 把所有步骤都做一遍方可正常打印,不然只能停留在预览界面无法打印.

  5. Codeforces Round #197 (Div. 2) D. Xenia and Bit Operations

    D. Xenia and Bit Operations time limit per test 2 seconds memory limit per test 256 megabytes input ...

  6. Nginx 訪问日志增长暴增出现尖刀的具体分析

    前言:          Nginx日志里面Mobileweb_access.log增长特别大.一天上百兆.将近100W的訪问记录.依照我们眼下的规模,热点用户才500个左右.就算人人用手机app訪问 ...

  7. android.graphics包中的一些类的使用

    游戏编程相关参考 Matrix学习系列: http://www.moandroid.com/?p=1781 Android画图学习总结系列: http://www.moandroid.com/?p=7 ...

  8. .Net 配置文件——继承ConfigurationSection实现自己定义处理类处理自己定义配置节点

    除了使用继承IConfigurationSectionHandler的方法定义处理自己定义节点的类.还能够通过继承ConfigurationSection类实现相同效果. 首先说下.Net配置文件里一 ...

  9. callback用法简介

    源地址:https://argcv.com/articles/2669.c callback,函数的回调,从ANSI C开始,一直被广为使用.无论是windows API的所谓消息机制,动态链接库的调 ...

  10. 两个Hacker,专门Patch TObject

    http://hallvards.blogspot.fr/2006/03/hack-8-explicit-vmt-calls.html http://www.deltics.co.nz/blog/po ...