牛客周赛 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的更多相关文章

  1. 牛客周赛11TG B-弹钢琴

    链接:https://ac.nowcoder.com/acm/contest/941/B来源:牛客网 题目描述 春希想听和纱弹钢琴! 为了阻止异变的发生,Pi将钢琴魔改了 钢琴上有 N 个键,每个键有 ...

  2. 牛客OI周赛9-提高组题目记录

    牛客OI周赛9-提高组题目记录 昨天晚上做了这一套比赛,觉得题目质量挺高,而且有一些非常有趣而且非常清奇的脑回路在里边,于是记录在此. T1: 扫雷 题目链接 设 \(f_i\) 表示扫到第 \(i\ ...

  3. 牛客OI周赛8-提高组A-用水填坑

    牛客OI周赛8-提高组A-用水填坑 题目 链接: https://ac.nowcoder.com/acm/contest/403/A 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制: ...

  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 ...

  5. 牛客OI周赛7-提高组 A 小睿睿的等式

    链接:https://ac.nowcoder.com/acm/contest/371/A来源:牛客网 小睿睿在游戏开始时有n根火柴棒,他想知道能摆成形如“A+B=n”的等式且使用的火柴棒数也恰好等于n ...

  6. 牛客OI周赛7-提高组 B小睿睿的询问(ST打表)

    链接:https://ac.nowcoder.com/acm/contest/371/B来源:牛客网 小睿睿的n个妹纸排成一排,每个妹纸有一个颜值val[i].有m个询问,对于每一个询问,小睿睿想知道 ...

  7. 牛客OI周赛7-普及组 解题报告

    出题人好评. 评测机差评. A 救救喵咪 二位偏序.如果数据范围大的话直接树状数组,不过才1000就\(O(n^2)\)暴力就ok了. #include <bits/stdc++.h> s ...

  8. 牛客OI周赛2-提高组

    A.游戏 链接:https://www.nowcoder.com/acm/contest/210/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 131072K,其他语 ...

  9. 牛客OI周赛10-普及组-A眼花缭乱的街市-(加速+二分)

    https://ac.nowcoder.com/acm/contest/901/A 很简单的一道题,全场只有20+AC,卡时间.新学了cin加速语法和数组二分查找的函数调用. 知道有个读写挂,可以加速 ...

  10. 牛客OI周赛11-普及组 B Game with numbers (数学,预处理真因子)

    链接:https://ac.nowcoder.com/acm/contest/942/B 来源:牛客网 Game with numbers 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C+ ...

随机推荐

  1. Kotlin 变量详解:声明、赋值与最佳实践指南

    Kotlin 变量 变量是用于存储数据值的容器. 要创建一个变量,使用 var 或 val,然后使用等号(=)给它赋值: 语法 var 变量名 = 值 val 变量名 = 值 示例 var name ...

  2. POJ2247,hdu1058(Humble Numbers)

    Problem Description A number whose only prime factors are 2,3,5 or 7 is called a humble number. The ...

  3. V4L2视频采集操作流程和接口说明

    背景: V4L2是V4L的升级版本,为linux下视频设备程序提供了一套接口规范.包括一套数据结构和底层V4L2驱动接口. <WAV文件格式分析> 一般操作流程(视频设备): 1.打开设备 ...

  4. 函数式编程(Lambda、Stream流、Optional等)

    # 声明 文档来源:Github@shuhongfan 源文档:B站UP主:三更草堂 # 函数式编程-Stream流 # 概述 # 为什么学? 基操,否则看不懂别人写的优雅代码 简化代码,不想看到有些 ...

  5. 解决方案 | cvxpy成功安装过程及其使用攻略

    背景:  由于需要研究KKT条件下的最优化问题,需要安装一个python的包cvxpy. 过程: 1.正常pip install cvxpy 不可取(不会成功,中间有报错): 2.主要错误在于:其依赖 ...

  6. API网关实践-网易云轻舟微服务

    微服务最佳实践中,我们需要通过统一的 API 网关进行服务能力的共享,API 网关为用户提供发布.管理.保护和监控 API的能力,帮助用户在自己的多个系统之间,或者内部系统与合作伙伴以及第三方的系统之 ...

  7. Django集成的密码找回功能

    要实现忘记密码功能,您需要进行以下修改: 添加忘记密码链接到登录页面. 创建密码丢失修改页面. 创建密码修改页面. 编写相应的视图函数来处理密码丢失修改和密码修改逻辑. 编写发送验证信息到邮箱的逻辑. ...

  8. 机器学习:详解迁移学习(Transfer learning)

    详解迁移学习 深度学习中,最强大的理念之一就是,有的时候神经网络可以从一个任务中习得知识,并将这些知识应用到另一个独立的任务中.所以例如,也许已经训练好一个神经网络,能够识别像猫这样的对象,然后使用那 ...

  9. TS:菜单数组转树形,支持多级(递归)

    方法一 import {menus} from './menus.ts' function listToTree(list: any = [], options = {}, data = null) ...

  10. C#:只支持GET和POST方法的浏览器,如何发送PUT/DELETE请求?RESTful WebAPI如何响应?

    理想的RESTful WebAPI采用面向资源的架构,并使用请求的HTTP方法表示针对目标资源的操作类型.但是理想和现实是有距离的,虽然HTTP协议提供了一系列原生的HTTP方法,但是在具体的网络环境 ...