当前位置: 首页 > news >正文

牛客小白月赛90


title: 牛客小白月赛90
date: 2024-04-05 21:37:01
tags: 赛后思考与总结
categories: 比赛

A

思路

按题意直接累加就行

代码

int n; cin >> n;int m; cin >> m;ll ans = 0;vector<int> a(n + 1);for(int i =1; i <= n ; i ++) cin >> a[i];for(int i = 1; i <= m; i ++){int x; cin >> x;ans += a[x];}cout << ans << endl;

B

思路

对双方取余3,如果取余后不相等,则不合法。

代码

int a,b;cin >> a >> b;if(a < b) swap(a,b);a %= 3,b %= 3;if(a == b) cout << "Yes" << endl;else cout << "No" << endl;

C

思路

特判长度为1的数。当个长度大于等于2时,寻找最靠左的非前导0,该位为1,其后面的位置,填1或者0即是最优解,当没有出现0的时候,答案要么是1要么是2。

代码

void solve()
{string s; cin >> s;if(s.size() == 1) cout << 1 << endl;else{int ans = 1;int x = s.size() ;for(int i = 0; i < s.size() ; i ++){if(s[i] == '0') {x = i;break;}}//cout << x << endl;for(int i = x + 1; i < s.size(); i ++){if(s[i] == '0') ans = ans * 10 + 1;else ans *= 10;}if(x == s.size()){if(s[x - 1] == '1') ans = 2;}cout << ans <<endl;}
}

D

思路

因为 m 小于 10,那么情况最多为 2 10 − 1 2 ^ {10} - 1 2101次,因此二进制枚举每一种情况,当前选还是不选

代码

PII a[N];
void solve()
{int n,m;cin >> n >> m;int ans = 0;vector<int> st(n + 4);for(int i = 0; i < m ; i++){cin >> a[i].x >> a[i].y;}for(int i = 0; i < (1 << m); i ++){for(int j = 0 ; j < m ; j++){if((1 << j) & i){st[a[j].x] ++;st[a[j].y + 1] --;}}int flag = 1;for(int i = 1; i <= n; i ++){st[i] += st[i - 1];if(st[i] < 2) flag = 0;st[i - 1] = 0;}if(flag) ans ++;st[n] = 0;}cout << ans << endl;
}

E

思路

优先队列维护 k 个最小的值。

代码

int a[N],b[N];void solve()
{int n,m;cin >> n >> m;for(int i = 1; i <= n ; i ++) cin >> a[i];for(int i = 1; i <= n ; i ++) cin >> b[i];while(m --){int k ; cin >> k;priority_queue<int> q;ll now = 0;for(int i = 1; i <= k ; i++){q.push(b[i]);now += a[i];now += b[i];}ll res = now;//cout << res <<endl;for(int i = k + 1; i <= n ; i ++){now += a[i];if(b[i] < q.top()){now -= q.top();q.pop();q.push(b[i]);now += b[i];}res = min(res,now);}cout << res << endl;}}
http://www.lryc.cn/news/332469.html

相关文章:

  • 【51单片机入门记录】A/D、D/A转换器PCF859应用
  • 设计模式(13):模板方法模式
  • 公众号申请上限怎么提升
  • 【算法刷题day16】Leetcode:104.二叉树的最大深度 559.n叉树的最大深度 111.二叉树的最小深度 222.完全二叉树的节点个数
  • 电商技术揭秘一:电商架构设计与核心技术
  • Ubuntu 自启动应用程序的方法
  • Star GAN论文解析
  • 全网最强JavaWeb笔记 | 万字长文爆肝JavaWeb开发——day06_数据库-MySQL-02
  • 数据结构day2--双向链表
  • 蓝桥杯单片机真题实践篇
  • 前端pdf.js将pdf转为图片,尤其适合电子发票打印
  • 第四百四十三回
  • 一分钟快速用上号称“音乐版ChatGPT”的suno AI,适合普通人的超简单教程!
  • 干货!一文读懂:位像素海外仓系统的分销功能
  • 【洛谷】P1449 后缀表达式
  • 【MySQL】聚合函数和分组聚合
  • RDD算子(四)、血缘关系、持久化
  • 51之定时器与中断系统
  • C语言中的内存函数
  • JS继承与原型、原型链
  • C#基础知识总结
  • 机器学习模型——决策树
  • 【HTML】制作一个简单的三角形动态图形
  • Acwing.504 转圈游戏(带取余的快速幂)
  • pair作为unordered_map的key报错
  • Windows提权—数据库提权-mysql提权mssql提权Oracle数据库提权
  • 为什么android创建Fragment推荐用newInstance
  • MyBatis的xml实现方式
  • 大模型prompt技巧——思维链(Chain-of-Thought)
  • 内网穿透的应用-如何在Android Termux上部署MySQL数据库并实现无公网IP远程访问