牛客周赛 Round 7
牛客周赛 Round 7
A-游游的you矩阵_牛客周赛 Round 7 (nowcoder.com)
把四种字符凑一起看看有没有\(y,o,u\)就行
#include <bits/stdc++.h>
#define int long long
using namespace std;
signed main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n,m;
cin >> n >> m;
vector<string> a(n);
for(auto &i : a) cin >> i;
int ans = 0;
for(int i = 1;i < n;i ++){
for(int j = 1;j < m;j ++){
string s = "";
s += a[i][j];
s += a[i][j - 1];
s += a[i - 1][j];
s += a[i - 1][j - 1];
if(s.find('y') != -1 && s.find('o') != -1 && s.find('u') != -1)
ans ++;
}
}
cout << ans << '\n';
return 0;
}
B-游游的01串操作_牛客周赛 Round 7 (nowcoder.com)
\(dp[i][1/0]\)表示字符\(i\)为\(1/0\)时的最小代价
貌似直接讨论首位为\(1/0\)然后后面跟着算也能做出来
#include<bits/stdc++.h>
using i64 = long long;
using namespace std;
typedef pair<i64, i64> PII;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
string s;
cin >> s;
s = " " + s;
int n = s.size();
vector dp(n, vector<int>(2,0));
for(int i = 1;i < n;i ++){
dp[i][0] = dp[i - 1][1] + i * (s[i] - '0');
dp[i][1] = dp[i - 1][0] + i * ('1' - s[i]);
}
cout << min(dp[n - 1][0],dp[n - 1][1]) << '\n';
return 0;
}
C-游游的正整数_牛客周赛 Round 7 (nowcoder.com)
有解情况下,那最少情况下需要\(n\)个\(r\),最多情况下需要\(m\)个\(l\),如果说最少情况下的\(n\)都大于了最多情况下的\(m\),那么肯定无解
感觉更像是结论题,也可能数据水了(?)
#include<bits/stdc++.h>
using i64 = long long;
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int T;
cin >> T;
while(T--){
int a,b,l,r;
cin >> a >> b >> l >> r;
int n = ceil((b - a) * 1.0 / r),
m = (b - a) * 1.0 / l;
if(n > m) cout << -1 << '\n';
else cout << n << ' ' << m << '\n';
}
return 0;
}
D-游游的选数乘积_牛客周赛 Round 7 (nowcoder.com)
两数相乘要使得末尾有\(0\),那就要看这两数的因子里能否凑出\(2\)和\(5\),只有凑出了\(2\)和\(5\),才能得出\(10\),才能使末尾有\(0\),所以我们每次把每个数的\(2\)和\(5\)因子数计算出来,然后去寻找是否存在使得这个数的\(2\)和\(5\)因子数和另一个数相加能得到大于或等于\(x\)的结果,能得到那我们就加\(1\),这里是用一个二维数组把拥有相同数量\(2\)和\(5\)因子的统计起来,且\(1e9\)里最多只有\(30\)个\(2\)和\(13\)个\(5\),所以我们只要三十多就行了
#include<bits/stdc++.h>
using i64 = long long;
using namespace std;
typedef pair<i64, i64> PII;
int sum[35][35];
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n,x;
cin >> n >> x;
i64 ans = 0;
for(int i = 0;i < n;i ++){
int a;
cin >> a;
int num2 = 0, num5 = 0;
while(a % 5 == 0) num5 ++, a /= 5;
while(a % 2 == 0) num2 ++, a /= 2;
for(int j = 0;j < 32;j ++)
for(int k = 0;k < 32;k ++)
if(num5 + k >= x && num2 + j >= x)
ans += sum[j][k];
sum[num2][num5] ++;
}
cout << ans << '\n';
return 0;
}
牛客周赛 Round 7的更多相关文章
- 牛客周赛11TG B-弹钢琴
链接:https://ac.nowcoder.com/acm/contest/941/B来源:牛客网 题目描述 春希想听和纱弹钢琴! 为了阻止异变的发生,Pi将钢琴魔改了 钢琴上有 N 个键,每个键有 ...
- 牛客OI周赛9-提高组题目记录
牛客OI周赛9-提高组题目记录 昨天晚上做了这一套比赛,觉得题目质量挺高,而且有一些非常有趣而且非常清奇的脑回路在里边,于是记录在此. T1: 扫雷 题目链接 设 \(f_i\) 表示扫到第 \(i\ ...
- 牛客OI周赛8-提高组A-用水填坑
牛客OI周赛8-提高组A-用水填坑 题目 链接: https://ac.nowcoder.com/acm/contest/403/A 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制: ...
- 牛客假日团队赛5 F 随机数 BZOJ 1662: [Usaco2006 Nov]Round Numbers 圆环数 (dfs记忆化搜索的数位DP)
链接:https://ac.nowcoder.com/acm/contest/984/F 来源:牛客网 随机数 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6 ...
- 牛客OI周赛7-提高组 A 小睿睿的等式
链接:https://ac.nowcoder.com/acm/contest/371/A来源:牛客网 小睿睿在游戏开始时有n根火柴棒,他想知道能摆成形如“A+B=n”的等式且使用的火柴棒数也恰好等于n ...
- 牛客OI周赛7-提高组 B小睿睿的询问(ST打表)
链接:https://ac.nowcoder.com/acm/contest/371/B来源:牛客网 小睿睿的n个妹纸排成一排,每个妹纸有一个颜值val[i].有m个询问,对于每一个询问,小睿睿想知道 ...
- 牛客OI周赛7-普及组 解题报告
出题人好评. 评测机差评. A 救救喵咪 二位偏序.如果数据范围大的话直接树状数组,不过才1000就\(O(n^2)\)暴力就ok了. #include <bits/stdc++.h> s ...
- 牛客OI周赛2-提高组
A.游戏 链接:https://www.nowcoder.com/acm/contest/210/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语 ...
- 牛客OI周赛10-普及组-A眼花缭乱的街市-(加速+二分)
https://ac.nowcoder.com/acm/contest/901/A 很简单的一道题,全场只有20+AC,卡时间.新学了cin加速语法和数组二分查找的函数调用. 知道有个读写挂,可以加速 ...
- 牛客OI周赛11-普及组 B Game with numbers (数学,预处理真因子)
链接:https://ac.nowcoder.com/acm/contest/942/B 来源:牛客网 Game with numbers 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C+ ...
随机推荐
- 【长文】带你搞明白Redis
本文使用第一人称来介绍Redis 一.概述 Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化 ...
- 用 Python 绘制现金流量图
目录 用 Python 绘制现金流量图 Python 实现 实现原理 具体代码 使用示例 1:根据现金流量表绘制现金流量图 使用示例 2:绘制等额.等差.等比序列现金流量图 等额序列现金流量图 等差序 ...
- 『vulnhub系列』EVILBOX-ONE
『vulnhub系列』EVILBOX-ONE 下载地址: https://www.vulnhub.com/entry/evilbox-one,736/ 信息搜集: 使用nmap探测内网存活主机,发现开 ...
- 全志T113-i+玄铁HiFi4开发板硬件说明书(2)
前 言 本文档主要介绍开发板硬件接口资源以及设计注意事项等内容,测试板卡为全志T113-i+玄铁HiFi4开发板,由于篇幅问题,本篇文章共分为上下两集,点击账户可查看更多内容详情,开发问题欢迎留言,感 ...
- Konva 内容重叠无法触发点击事件的解决方法
写在前面: 环境:Vue3 + Konva + vite 在绘制界面时踩坑,主要是关于 listening 属性的使用 在绘制界面时,不免出现有内容重叠的情况,这会影响事件的触发 使用设置listen ...
- MySQL 获取所有表名、所有表结构
获取所有表名 SELECT A.TABLE_SCHEMA '数据库', A.TABLE_NAME '表名', A.TABLE_ROWS '表记录行数', A.CREATE_TIME '创表时间', A ...
- 分布式事务的概念和解决方案Seate
引入分布式事务: 在电商系统中,扣减库存与保存订单是在两个服务中存在的,如果扣减库存后订单保存失败了是不会回滚的,这样就会造成数据不一致的情况,这其实就是我们所说的分布式事务的问题,接下来我们来学习分 ...
- Python代码学习
1.生成四位数字字母验证码,大小写字母随机 import random if __name__ =="__main__": #四位数字字母验证码的生成 checkcode=&quo ...
- AT_agc019_b 题解
洛谷链接&Atcoder 链接. 题目简述 给定一个字符串 \(A\),可以选择区间 \([i,j]\) 翻转一次,求能得到多少本质不同的字符串.(\(A\) 的长度不超过 \(2 \time ...
- 靶机练习: hacksudo---Thor
靶机:hacksudo---Thor 准备工作 靶机地址: http://download.vulnhub.com/hacksudo/hacksudo---Thor.zip MD5 校验:d12168 ...