【LGR-050】洛谷8月月赛
只有比赛现场的暴力代码留念,复盘题解见具体题目
T1 耗时20mins,暴力枚举,复杂度O(nQ),期望得分50
#include<iostream>
#include<algorithm>
using namespace std;#define mod 998244353
const int maxn = 1e6+10;
typedef long long LL;LL n, a[2010][maxn], len;//第i次操作后j的值,已经操作了几次
void change(int x){for(int i = len+1; i <= x; i++)for(int j = 1; j <= n; j++)a[i][j] = a[i-1][j]+a[i-1][j%n+1];
}int main(){cin>>n;for(int i = 1; i <= n; i++)cin>>a[0][i];int Q; cin>>Q;for(int i = 1; i <= Q; i++){int x, y; cin>>x>>y;if(x > len)change(x);cout<<(a[x][y]%mod)<<'\n';}return 0;
}
T2 耗时20mins
- 给定一个序列
- 每次可以合并两个数得到一个新数,结果为较小的数的两倍
- 任意次操作后,能得到的最大数是多少。
贪心,每次选最小的两个合并,,我也不知道为什么这样,只是隐隐感觉。。。可是明明样例都过了啊。期望得分0 or 60
#include<iostream>
#include<algorithm>
#include<queue>
using namespace std;
const int maxn = 1e7+10;int n, m, seed, a[maxn];
priority_queue<int, vector<int>, greater<int> >q;
void generate_array(int a[], int n, int m, int seed) {unsigned x = seed;for (int i = 0; i < n; ++i) {x ^= x << 13;x ^= x >> 17;x ^= x << 5;//a[i] = x % m + 1;q.push(x%m+1);}
}int main(){cin>>n>>m>>seed;generate_array(a,n,m,seed);while(q.size()!=1){int a = q.top(); q.pop();int b = q.top(); q.pop();int t = 2*min(a,b);q.push(t);}cout<<q.top()<<'\n';return 0;
}
T3
没看懂题+没什么想法。耗时10mins,输出2,期望得分0
#include<iostream>
using namespace std;
int main(){cout<<2<<'\n';return 0;
}
T4
- 在n行m列的棋盘上放2*n个炮,让他们互不攻击
- 求方案数
我不知道炮的攻击是不是同行隔着一个棋子的。。。
所以也就是每行每列最多放2个?枚举每个状态,判断列是否攻击(个数大于2剪枝剪掉),复杂度好像O(nCm2∗logn)( nC_m^2 * logn)(nCm2∗logn) ,也许会小一点。,期望得分20。耗时40mins
#include<iostream>
#include<bitset>
#include<map>
using namespace std;
#define mod 998244353
const int maxn = 100010;
int n, m, ans;
map<int, bitset<10010> >c; int num[maxn];//第i列有几个炮
void dfs(int cur){if(cur == n){ans = (ans+1)%mod;return ;}for(int i = 0; i < m; i++){//枚举所有状态for(int j = 0; j < i; j++){//都到m的话,i<j一次,j<i一次就会有重复,且满足行条件i!=j//c[cur] = (1<<i)|(1<<j);bitset<10010>s; s[i]=1; s[j]=1; c[cur] = s;num[i]++, num[j]++;if(num[i]<=2&&num[j]<=2)dfs(cur+1);//可行性剪枝num[i]--, num[j]--;}}
}
int main(){cin>>n>>m;dfs(0);cout<<ans<<'\n';return 0;
}
整个:
耗时1h30mins,最后1h直接弃坑(貌似一开始就没打算写标程?)。
期望得分50+30+0+20 = 100。。。
实际得分0+20+0+20=40。。。
【LGR-050】洛谷8月月赛相关推荐
- Mdoi R2 洛谷4月月赛I
Mdoi R2 洛谷4月月赛I DIV2 A Car 题目描述 在MDOI市, 为了推行环保, 一辆车是否被限行的依据时车牌号和当天的日期. 车牌号的编码方式是这样的: **·**前三位均为大写字母, ...
- 「LuoguP4995」「洛谷11月月赛」 跳跳!(贪心
题目描述 你是一只小跳蛙,你特别擅长在各种地方跳来跳去. 这一天,你和朋友小 F 一起出去玩耍的时候,遇到了一堆高矮不同的石头,其中第 ii 块的石头高度为 h_ihi,地面的高度是 h_0 = 0 ...
- 洛谷10月月赛 2 t2 深海少女与胖头鱼
洛谷10月月赛 2 t2 深海少女与胖头鱼 题目链接 参考资料:洛谷10月赛2讲评ppt; 本篇题解考完那天就开始写,断断续续写到今天才写完 本题作为基础的期望dp题,用来学习期望dp还是很不错的 ( ...
- 洛谷11月月赛(284pts rank85)
https://www.luogu.org/contestnew/show/12006 我是比赛完后在去写的 这是我第一次打洛谷月赛,之前一次是比赛完才去看而且写了第一题就没写后面的了 284分,太水 ...
- P8318 『JROI-4』淘气的猴子(【LGR-108】洛谷 5 月月赛 I JROI R4 Div.2)
众所周知,jockbutt 是一个可爱的女孩纸. 题目描述 jockbutt 有一个正整数序列,长度为 n,分别为 a1,a2...an,她非常喜欢这个序列,平时都非常爱惜它们. 可是有一天,当 jo ...
- 【洛谷月赛】洛谷11月月赛·Day1
洛谷2614 计算器弹琴 本题地址: http://www.luogu.org/problem/show?pid=2614 题目描述 总所周知,计算器可以拿来干很多它本不应该干的事情,比如写作文.(参 ...
- 洛谷 2 月月赛 I 『MdOI R4』 (Div2) A ~ D 四题全,也许会有六题,超高质量题解 (Div.1E、F下辈子一定补)【每日亿题2 / 9】
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A.P7337 『MdOI R4』Fun B.P7338 『MdOI R4』Color C.P7 ...
- CONTEST199 [有奖]洛谷8月月赛题解
http://www.luogu.org/contest/show?tid=199 T1: 集合求和 可以找一下规律,对于一个包含n个元素的集合,每个元素在所有子集中出现的次数均为2^(n-1),将s ...
- 洛谷10月月赛Round.1| P3399 丝绸之路 [DP]
题目背景 张骞于公元前138年曾历尽艰险出使过西域.加强了汉朝与西域各国的友好往来.从那以后,一队队骆驼商队在这漫长的商贸大道上行进,他们越过崇山峻岭,将中国的先进技术带向中亚.西亚和欧洲,将那里的香 ...
- 洛谷2017-2月月赛
打CF前随便打打,看了一眼只会做签到题,还挂了一次,95/400. A.富金森林公园 题目大意:给一个长度为n的数列,支持两种操作:1.修改一个数的值:2.给出一个k,问有多少段数大等于k.(N< ...
最新文章
- .net core引用错误的Entity Framework而导致不能正常迁移数据的解决办法
- FW : 一只小青蛙的一生(图片连载)
- django mysql 表单_Python Django 表单提交数据到mysql并展示
- 力扣——寻找两个有序数组的中位数
- 富爸爸系列之三富爸爸投资指南
- SpringBoot 2.0.x应用修改默认的端口号
- matlab不能radon变换,Radon变换的理解
- Ubuntu 16.04.5 (x86_64)下安装CUDA10 for 深度学习
- 4、51单片机——LCD1602 驱动(郭天祥)
- win7系统64位安装MATLAB(R2016)
- 大计划,大安排(一)
- idea关于找不到包的问题,比如:Java:程序包org.springframework.beans.factory.annotation不存在
- Nginx 配置示例
- python修改单个文件
- R语言使用ifelse函数进行变量编码(recode):把dataframe中连续变量基于条件表达式转化为两个类别的离散变量(分类变量)
- 常用的解决网络出现黄叉的方法
- 基于arduino及PS2的麦克纳姆轮遥控小车
- 喜报:冲量数据交易平台荣获2021中国软件技术大会创新产品奖
- C语言实现网络嗅探器
- 【正点原子FPGA连载】第四十三章MT9V034摄像头RGB-LCD显示实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1
热门文章
- 【脑经急转弯】—— 灯亮还是灭?
- Linux Tricks —— 快速清空文本文件内容、文本内容追加(tee)
- 构建复杂的应用程序 —— 重用与重构
- 深度学习实践指南(五)—— 求解异或问题
- 【剑指 offer】(十)—— 二进制形式 1 的个数
- C++基础::便捷函数
- csrf token invalid什么意思_Spring Cloud Gateway 实现Token校验
- mpls 保留标签值_浅析MPLS多协议标签交换的发展历程
- 零基础自学python-零基础如何自学成为Python高手?
- python工资高还是java-Python工资高还是Java工资高?Python和Java学哪个?