[MtOI2019]黑蚊子多 :

按题意模拟

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,m,k,t,q,nw;
bool w[];
int main(){
scanf("%d%d%d",&n,&m,&k);
while(k--) scanf("%d",&q),w[q]=;
while(nw<n){
nw+=m; ++t;
if(w[nw]) ++m;
}printf("%d",t);
return ;
}

[MtOI2019]膜Siyuan:

枚举前两个,后面一个可以推出来

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
inline int abs(int x){return x<?-x:x;}
int n,m,t,v,w,g1,g2;
int x[],y[],z[];
int main(){
scanf("%d%d",&n,&m);
for(int i=;i<=n;++i) scanf("%d%d%d",&x[i],&y[i],&z[i]);
for(int i=;i<=m;++i)
for(int j=;j<=m;++j){
w=abs(x[]-i)^abs(y[]-j)^;
g1=z[]-w; g2=z[]+w;
if(g1==g2) g2=-; //注意不要重复算
if(g1>&&g1<=m){
v=;
for(int k=;v&&k<=n;++k)
if(abs(x[k]-i)^abs(y[k]-j)^abs(z[k]-g1)^) v=;
t+=v;
//if(v) printf("%d %d %d\n",i,j,g1);
}
if(g2>&&g2<=m){
v=;
for(int k=;v&&k<=n;++k)
if(abs(x[k]-i)^abs(y[k]-j)^abs(z[k]-g2)^) v=;
t+=v;
//if(v) printf("%d %d %d\n",i,j,g2);
}
}
printf("%d",t);
return ;
}

[MtOI2019]时间跳跃:

不合法的方案满足的条件:最大边大于其余边的和

考虑求:总方案$-$不合法的方案

设$f[j]$为选择的边和为$j$的方案数

$w[j]$为选择的边和为$j$的方案的权值和

从小到大枚举边长$i$,累计最大边为$i$时不合法方案的权值和,然后跑01背包

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
typedef long long ll;
#define N 5000
const int P=1e9+;
int T,n;ll f[N+],w[N+],s[N+];
ll Pow(ll x,int y){
ll re=;
for(;y;y>>=,x=x*x%P) if(y&) re=re*x%P;
return re;
}
void sol(){
f[]=;
for(int i=;i<=N;++i){
s[i]=s[i-];
for(int j=;j<=i;++j) s[i]=(s[i]+(f[j]+w[j])%P)%P;
for(int j=N;j>=i;--j){
f[j]=(f[j]+f[j-i])%P;
w[j]=(w[j]+f[j-i]+w[j-i])%P;
}
}
}
int main(){
sol(); scanf("%d",&T);
while(T--){
scanf("%d",&n);
ll Q=Pow(Pow(,n),P-),K=1ll*n*Pow(,n-)%P;
printf("%lld\n",Q*((K-s[n])%P+P)%P);
}return ;
}

【LGR-063】洛谷11月月赛 I & MtOI2019 Ex Div.2 (A-C)的更多相关文章

  1. 【LGR-063】洛谷11月月赛 I & MtOI2019 Ex Div.2

    [MtOI2019]黑蚊子多: 送分向水题,直接模拟即可. #include<iostream> #include<cstdio> #define N 1505 using n ...

  2. 「P4996」「洛谷11月月赛」 咕咕咕(数论

    题目描述 小 F 是一个能鸽善鹉的同学,他经常把事情拖到最后一天才去做,导致他的某些日子总是非常匆忙. 比如,时间回溯到了 2018 年 11 月 3 日.小 F 望着自己的任务清单: 看 iG 夺冠 ...

  3. 「P4994」「洛谷11月月赛」 终于结束的起点(枚举

    题目背景 终于结束的起点终于写下句点终于我们告别终于我们又回到原点…… 一个个 OIer 的竞赛生涯总是从一场 NOIp 开始,大多也在一场 NOIp 中结束,好似一次次轮回在不断上演.如果这次 NO ...

  4. 「LuoguP4995」「洛谷11月月赛」 跳跳!(贪心

    题目描述 你是一只小跳蛙,你特别擅长在各种地方跳来跳去. 这一天,你和朋友小 F 一起出去玩耍的时候,遇到了一堆高矮不同的石头,其中第 ii 块的石头高度为 h_ihi​,地面的高度是 h_0 = 0 ...

  5. 洛谷11月月赛(284pts rank85)

    https://www.luogu.org/contestnew/show/12006 我是比赛完后在去写的 这是我第一次打洛谷月赛,之前一次是比赛完才去看而且写了第一题就没写后面的了 284分,太水 ...

  6. 洛谷11月月赛round.1

    太感动了#2 thwfhk 240 (801ms) 100 100 40   又一张明信片,话说10月的怎么还没收到   P2246 SAC#1 - Hello World(升级版) 题目背景 一天, ...

  7. 洛谷11月月赛round.2

    P3414 SAC#1 - 组合数 题目背景 本题由世界上最蒟蒻最辣鸡最撒比的SOL提供. 寂月城网站是完美信息教室的官网.地址:http://191.101.11.174/mgzd . 题目描述 辣 ...

  8. 洛谷11月月赛题解(A-C)

    心路历程 辣鸡T3卡我1.5h题意,要不是最后nlh跟我解释了一下大样例估计这次是真凉透了.. A P4994 终于结束的起点 打出暴力来发现跑的过最大数据?? 保险起见还是去oeis了一波,然后被告 ...

  9. 【LGR-065】洛谷11月月赛 III Div.2

    临近$CSP$...... 下午打了一发月赛,感觉很爽. 非常菜的我只做了前两题......然而听说前两题人均过...... 写法不优秀被卡到$#1067$...... T1:基础字符串练习题: 前缀 ...

随机推荐

  1. 游标定位:Cursor类

    关于 Cursor Cursor 是每行的集合. 使用 moveToFirst() 定位第一行. 你必须知道每一列的名称. 你必须知道每一列的数据类型. Cursor 是一个随机的数据源. 所有的数据 ...

  2. [THUSC2017]杜老师:bitset+线性基

    算法一(50pts) 分析 有一个很显然的暴力做法,对于区间内的每个数开个bitset,然后暴力分解质因数.如果对于一个数,它的一个质因子的指数是奇数,那么就把bitset的对应位设成\(1\).答案 ...

  3. [LeetCode]-DataBase-Rising Temperature

    Given a Weather table, write a SQL query to find all dates' Ids with higher temperature compared to ...

  4. Python爬取中文页面的时候出现的乱码问题(续)

    我在上一篇博客中说明了在爬取数据的时候,把数据写入到文件的乱码问题 在这一篇里面我做一个总结: 1.首先应该看一个案例 我把数据写在.py文件中: #coding:utf-8 s = 'hehe测试中 ...

  5. centos7 开机启动运行脚本

    /etc/profile.d 下建立一个xxxname.sh

  6. 第五周学习总结&实验报告(三)

    第五周学习总结&实验报告(三) 这一周又学习了新的知识点--继承. 一.继承的基本概念是: *定义一个类,在接下来所定义的类里面如果定义的属性与第一个类里面所拥有的属性一样,那么我们在此就不需 ...

  7. List of Mozilla-Based Applications

    List of Mozilla-Based Applications The following is a list of all known active applications that are ...

  8. TiDB单机安装测试

    TiDB单机安装测试 CentOS7.3安装MySQL5.6 1:下载TiDB安装包# cd /opt/source# wget http://download.pingcap.org/tidb-la ...

  9. Visual Studio Code 折叠代码快捷键

    为了快速阅读不熟悉的代码, 最好可以打开一个文件能先将具体实现折叠起来的,进行一个大概的认识,vscode中有这些折叠快捷键: ctrl+shift+[是折叠 ctrl+k ctrl+0 是折叠全部 ...

  10. SQLSERVER 和 ORACLE 查询数据库文件大小

    SQLSERVER: SQLSERVER一个库的文件分为数据文件(行数据)和日志文件两个文件,详情可以在数据库的属性->文件中查看. 在资源管理器中打开文件所在路径可以直接看到这两个文件 但是, ...