/*
唉,那个第二种策略应该是没用吧。
为什么我列出式子最优策略跟第二种策略有关??
为什么我写了写分布列还是跟第二种策略有关??
为什么数学还没学到期望的孩子们都A了?
唉。人生啊。 0.5h后

我好像明白了。。。
  考试的时候直接用f数组推的结论,结果就很神奇了...
  我知道不是求最大概率是最大期望,然后我就把一定输对答案的贡献看作了当前期望的贡献减去这场可能赢对下一场的贡献;

把这个东西和这场可能赢可能输对答案的贡献作比较,就是消不掉那个这场一定输的贡献...然后我就觉得可能有最优决策和一定输有关...
  现在发现好像并不等价

*/
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <string>
#include <iostream> using namespace std; const int maxn=+;
int n;
double p[maxn][maxn];
double f[maxn][maxn];
int main()
{
freopen("game.in","r",stdin);
freopen("game.out","w",stdout);
scanf("%d",&n);
for (int i=;i<=n;i++)
for (int j=;j<i;j++)
scanf("%lf",&p[i][j]);
f[][]=;
for (int i=;i<n;i++)
for (int j=;j<=i;j++)
{
f[i+][j+]+=f[i][j]*p[i+][j];
f[i+][j]+=f[i][j]*(-p[i+][j]);
}
double ans=;
for (int j=;j<=n;j++) ans+=j*f[n][j];
printf("%.2lf\n",ans);
return ;
}

/*
一道比较好写的折半搜索题。
估计暴搜剪枝也能差不多A。
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm> #define N 50
#define inf 0x3f3f3f3f using namespace std;
int n,m,ans,cnt1,cnt2,dep,flag;
int v[N],sum1[],sum2[]; bool cmp(int a,int b){return a>b;} inline int read()
{
int x=,f=;char c=getchar();
while(c>''||c<''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
} void dfs(int k,int rest)
{
if(k==dep)
{
if(flag)
{
sum1[++cnt1]=rest;return;
}
else
{
sum2[++cnt2]=rest;return;
}
}
dfs(k+,rest);
dfs(k+,rest-v[k+]);
} int main()
{
freopen("cake.in","r",stdin);
freopen("cake.out","w",stdout);
n=read();m=read();
for(int i=;i<=n;i++) v[i]=read();
dep=n/;flag=;dfs(,m/);
dep=n;flag=;dfs(n/,m-m/);
int L=,R=;ans=inf;
sort(sum1+,sum1+cnt1+);sort(sum2+,sum2+cnt2+,cmp);
if(sum1[]+sum2[cnt2]>=) ans=sum1[]+sum2[cnt2];
else
{
while(L<=cnt1 && R<=cnt2)
{
while(sum1[L]+sum2[R]<) L++;
ans=min(ans,sum1[L]+sum2[R]);
while(sum1[L]+sum2[R]>)
{
R++;
ans=min(ans,sum1[L]+sum2[R-]);
}
L++;
}
}
printf("%d\n",ans);
fclose(stdin);fclose(stdout);
return ;
}

/*
20dfs+特判n=1,2
下次再忘了取模剁手了。
*/
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <string>
#include <iostream> #define N 1001
#define mod 1000000007
#define ll long long using namespace std;
ll n,m,h,w,ans,cnt;
ll a,b,c,d,v;
ll Mar[N][N];
struct node{
ll a,b,c,d,v;
}ask[N]; inline ll read()
{
ll x=,f=;char c=getchar();
while(c>''||c<''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
} ll ksm(ll a,ll b)
{
ll res=;
while(b)
{
if(b&) res=res*a%mod;
b>>=;a=a*a%mod;
}return res;
} void solve1()
{
for(int i=;i<=n;i++)
{
a=read();b=read();c=read();d=read();v=read();
for(int x=a;x<=c;x++) for(int y=b;y>=d;y--)
Mar[x][y]=v;
}
ans=;
} bool judge()
{
ll mx=;
for(int i=;i<=n;i++)
{
for(int x=ask[i].a;x<=ask[i].c;x++) for(int y=ask[i].d;y>=ask[i].b;y--)
{
if(Mar[x][y]>ask[i].v) return false;
mx=max(mx,Mar[x][y]);
}
if(mx!=ask[i].v) return false;
}return true;
} void dfs(int x,int y)
{
if(y>w) x++,y%=w;
if(x< || y<) return;
if(x==h+)
{
if(judge()) ans++;ans%=mod;
return;
}
for(int i=;i<=m;i++)
{
Mar[x][y]=i;
dfs(x,y+);
} } int main()
{
freopen("grid.in","r",stdin);
freopen("grid.out","w",stdout);
h=read();w=read();m=read();n=read();
if(n==)
{
cout<<ksm(m,h*w)%mod<<endl;
return ;
}
if(n==)
{
a=read();b=read();c=read();d=read();v=read();
ll num=(c-a+)*(d-b+);
ll res1=ksm(m,h*w-num)%mod;
ll res2=ksm(v,num)%mod;
ll res3=(res1%mod*ksm(v-,num)%mod)%mod;
ans=(res1%mod*res2%mod-res3+mod)%mod;
cout<<ans%mod<<endl;
return ;
}
if(h<= && w<=)
{
for(int i=;i<=n;i++)
{
ask[i].a=read();ask[i].b=read();
ask[i].c=read();ask[i].d=read();
ask[i].v=read();
}
dfs(,),cout<<ans<<endl;
}
fclose(stdin);fclose(stdout);
return ;
}

50暴力

11.5NOIP模拟赛的更多相关文章

  1. 11.5NOIP模拟赛解题报告

    心路历程 预计得分:\(100 + 40 + 30 = 170\) 实际得分:\(100 +100 + 50 = 250\) 辣鸡数据毁我青春 T1一眼不会做感觉要凉 T2好像一波折半搜索就做完了 T ...

  2. 9.11 myl模拟赛

    9.11 myl 模拟赛 100 + 100 + 0 第一题耗费了太多的时间,导致最后一题没有时间想,直接去写了暴力,而且出题人没有给暴力分.... Problem 1. superman [题目描述 ...

  3. 2017.6.11 NOIP模拟赛

    题目链接: http://files.cnblogs.com/files/TheRoadToTheGold/2017-6.11NOIP%E6%A8%A1%E6%8B%9F%E8%B5%9B.zip 期 ...

  4. 11.17 模拟赛&&day-2

    /* 后天就要复赛了啊啊啊啊啊. 可能是因为我是一个比较念旧的人吧. 讲真 还真是有点不舍. 转眼间一年的时间就过去了. 2015.12-2016.11. OI的一年. NOIP gryz RP++. ...

  5. 2014.11.12模拟赛【美妙的数字】| vijos1904学姐的幸运数字

    美妙的数字(number.c/.cpp/.pas) 题目描述 黄巨大认为非负整数是美妙的,并且它的数值越小就越美妙.当然0是最美妙的啦. 现在他得到一串非负整数,对于每个数都可以选择先对它做二进制非运 ...

  6. 2014.11.12模拟赛【最小公倍数】| vijos1047最小公倍数

    最小公倍数(lcm.c/.cpp/.pas) 题目描述 给定两个正整数,求他们的最小公倍数. 样例输入 28 12 样例输出 84 数据范围 对于40%数据:1<=a,b<=10^9 对于 ...

  7. 11.7NOIP模拟赛解题报告

    心路历程 预计得分:\(50 + 100 + 100\) 实际得分:\(50 + 100 +100\) T2 T3两道数据结构题美滋滋,然而写完就过去\(3h\)美滋滋 T1数学题学弟们都会做Orzz ...

  8. 11.6NOIP模拟赛解题报告

    心路历程 预计得分:\(100 + 100 + 100 = 300\) 实际得分:\(100 +100 +100 = 300\) 学OI两年终于AK了一次qwq(虽然题目炒鸡水..) 纪念一下这令人激 ...

  9. 11.1NOIP模拟赛解题报告

    心路历程 预计得分:\(100 + 100 + 50\) 实际得分:\(100 + 100 + 50\) 感觉老师找的题有点水呀. 上来看T1,woc?裸的等比数列求和?然而我不会公式呀..感觉要凉 ...

随机推荐

  1. 常量,字段,构造方法 调试 ms 源代码 一个C#二维码图片识别的Demo 近期ASP.NET问题汇总及对应的解决办法 c# chart控件柱状图,改变柱子宽度 使用C#创建Windows服务 C#服务端判断客户端socket是否已断开的方法 线程 线程池 Task .NET 单元测试的利剑——模拟框架Moq

    常量,字段,构造方法   常量 1.什么是常量 ​ 常量是值从不变化的符号,在编译之前值就必须确定.编译后,常量值会保存到程序集元数据中.所以,常量必须是编译器识别的基元类型的常量,如:Boolean ...

  2. Codefoces 432 C. Prime Swaps(水)

    思路:从前往后想将1调整好,在调整2....这样平均每次有五次机会调整,并且有相当一部分可能都用不到五次,能够一试.ac 代码: #include<iostream> #include&l ...

  3. angularJS---自己定义过滤器

    AngularJS还有一个特点就是提供了过滤器.能够通过操作UNIX下管道的方式,操作数据结果. 通过使用管道.能够便于双向的数据绑定中视图的展现. 过滤器在处理过程中,将数据变成新的格式.并且能够使 ...

  4. Android 代码写控件

    1.设置dialog弹出anthor public static SearchDialog getSearchDialog(Context context,OnDismissListener list ...

  5. Ajax的简单实现(Json)

    之前写的是一般的Ajax if (request.status === 200) { document.getElementById("createResult").innerHT ...

  6. MongoDB经常使用命令

    首先我们先安装这个数据库.你能够使用windows或者linux,但推荐使用的是linux,我使用的是ubuntu12.04.在下方的网址中共能够下载,基本都是64位的系统. 假设位linux系统也能 ...

  7. 检測磁盘驱动的健康程度SMART

    在server中,全部组件中一般最easy坏掉的就是磁盘.所以一般採取RAID来保证系统的稳定性,通过冗余磁盘的方式防止磁盘故障. 现代硬件驱动器一般支持SMART(自我监測分析和报告技术),它可以监 ...

  8. 设计模式学习笔记——Prototype原型模式

    原型模型就是克隆. 还有深克隆.浅克隆,一切听上去都那么耳熟能详.

  9. 2016/05/27 php上传文件常见问题总结

    php上传文件常见问题总结 投稿:hebedich 字体:[增加 减小] 类型:转载 时间:2015-02-03我要评论 这篇文章主要介绍了php上传文件常见问题总结,基本上经常碰到的问题的处理都列了 ...

  10. 小程序 单页应用的 tab切换 实现

    小程序 单页应用的  tab切换 实现