牛客周赛63
https://ac.nowcoder.com/acm/contest/91592
好数
简单的判断两位数,且十位等于个位
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define int long long
using namespace std;
using ll = long long;
using pii = pair<int, int>;
using tiii = tuple<int, int, int>;
const int N = 1e6 + 10;
const int mod = 1e9 + 7;void solve()
{int x;cin>>x;if(x>=10&&x<=99){int xx=x%10;x=x/10;if(xx==x){cout<<"Yes"<<'\n';return;}}cout<<"No"<<'\n';
}
signed main()
{//freopen("in.in", "r", stdin);//freopen("out.out", "w", stdout);IOS;int _ = 1; //cin >> _;while (_--) solve();return 0;
}
小红的好数组
1<n,k<1000
暴力最多进行 (n-k+1)*k次
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define int long long
using namespace std;
using ll = long long;
using pii = pair<int, int>;
using tiii = tuple<int, int, int>;
const int N = 1e6 + 10;
const int mod = 1e9 + 7;
int n,k,a[N];int chang(deque<int>de)
{int ans=0;while(de.size()){auto x=de.front(),y=de.back();if(x!=y) ans++;if(de.size()) de.pop_back();if(de.size()) de.pop_front();}if(ans==1) return 1;return 0;
}void solve()
{cin>>n>>k;for(int i=1;i<=n;i++) cin>>a[i];deque<int>de;int ans=0;for(int i=1;i<=n;i++){de.push_back(a[i]);while(de.size()>k) de.pop_front();if(de.size()==k)ans+=chang(de);//if(chang(de)) cout<<i<<"\n";}cout<<ans<<'\n';
}
signed main()
{//freopen("in.in", "r", stdin);//freopen("out.out", "w", stdout);IOS;int _ = 1; //cin >> _;while (_--) solve();return 0;
}
小红的矩阵行走
正常bfs走,当当前位置与(1,1)一样时才能走
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define int long long
using namespace std;
using ll = long long;
using pii = pair<int, int>;
using tiii = tuple<int, int, int>;
const int N = 200 + 10;
const int mod = 1e9 + 7;
int a[N][N];
int n,m;
int p=0;
int dx[]={0,1};
int dy[]={1,0};
void dfs(int x,int y)
{//cout<<"(x,y)"<<"("<<x<<","<<y<<")"<<'\n';if(x==n&&y==m){p=1;return;}for(int i=0;i<2;i++){int xx=x+dx[i];int yy=y+dy[i];if(xx>=1&&xx<=n&&yy>=1&&yy<=m&&a[xx][yy]==a[x][y]){dfs(xx,yy);}}
}
void solve()
{p=0;cin>>n>>m;//vector<int>a(n+1,vector<int>(m+1));for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) cin>>a[i][j];int k=a[1][1];dfs(1,1);if(p) cout<<"Yes"<<'\n';else cout<<"No"<<'\n';
}
signed main()
{//freopen("in.in", "r", stdin);//freopen("out.out", "w", stdout);IOS;int _ = 1; cin >> _;while (_--) solve();return 0;
}
小红的行列式构造
如果时0的话就构造
1 1 1
1 1 1
1 1 1
反之
-x x -x
2 1 1
1 1 2
即可
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define int long long
using namespace std;
using ll = long long;
using pii = pair<int, int>;
using tiii = tuple<int, int, int>;
const int N = 1e6 + 10;
const int mod = 1e9 + 7;void solve()
{int x;cin>>x;if(x==0){cout<<"1 1 1\n1 1 1\n1 1 1\n"<<'\n';return ;}cout<<-x<<" "<<-x<<" "<<-x<<"\n";cout<<2<<" "<<1<<' '<<1<<'\n';cout<<1<<" "<<1<<" "<<2<<"\n";
}
signed main()
{//freopen("in.in", "r", stdin);//freopen("out.out", "w", stdout);IOS;int _ = 1; //cin >> _;while (_--) solve();return 0;
}
小红的 red 计数
red 长度只有3 用线段树维护 r,e,d,re,rd,ed,red,ew,de,dr,der。
搜索 l r是只需要搜 0~l-1 l~r r+1,n
反转l~r,然后将三个区间合并。
总体时间越nlogn
#include <bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define int long long
using namespace std;
using ll = long long;
using pii = pair<int, int>;
using tiii = tuple<int, int, int>;
const int N = 1e5 + 10;
const int mod = 1e9 + 7;
#define kl (k<<1)
#define kr (k<<1|1)struct node
{int ll,rr;int r,e,d;//d e rint re,rd,ed;int er,dr,de;int red,der;
}tre[N<<2];
string s;
int n,m;void pushup(node& op1,node& op2,node& op3)
{op1.r=op2.r+op3.r;op1.e=op2.e+op3.e;op1.d=op2.d+op3.d;op1.re=op2.re+op3.re+op2.r*op3.e;op1.rd=op2.rd+op3.rd+op2.r*op3.d;op1.ed=op2.ed+op3.ed+op2.e*op3.d;op1.er=op2.er+op3.er+op2.e*op3.r;op1.dr=op2.dr+op3.dr+op2.d*op3.r;op1.de=op2.de+op3.de+op2.d*op3.e;op1.red=op2.red+op3.red+op2.r*op3.ed+op2.re*op3.d;op1.der=op2.der+op3.der+op2.d*op3.er+op2.de*op3.r;
}void build(int k,int l,int r)
{//tre[k].l=l;tre[k].r=r;tre[k]={l,r,0,0,0,0,0,0,0,0,0,0,0};if(l==r){tre[k].r=(s[l]=='r');tre[k].e=(s[l]=='e');tre[k].d=(s[l]=='d');return;}int mid=(l+r)>>1;build(kl,l,mid);build(kr,mid+1,r);pushup(tre[k],tre[kl],tre[kr]);
}node query(int k,int l,int r)
{if(l<=tre[k].ll&&tre[k].rr<=r) return tre[k];int mid=(tre[k].ll+tre[k].rr)>>1;node op1={0},op2={0},op3={0};int oop2=0,oop3=0;if(l<=mid) op2=query(kl,l,r),oop2=1;if(r>mid) op3=query(kr,l,r),oop3=1;if(oop2&&oop3) {pushup(op1,op2,op3);return op1;}if(oop2) return op2;return op3;
}void print_op(node op)
{cout<<"r "<<op.r<<"\n";cout<<"e "<<op.e<<'\n';cout<<"d "<<op.d<<'\n';cout<<"re "<<op.re<<'\n';cout<<"rd "<<op.rd<<'\n';cout<<"ed "<<op.ed<<'\n';cout<<"red "<<op.red<<'\n';cout<<"der "<<op.der<<'\n';
}void solve()
{cin>>n>>m;cin>>s;s=' '+s;build(1,1,n);// print_op(tre[1]);cout<<'\n';while(m--){int l,r;cin>>l>>r;node op1={0},op2={0},op3={0};op1=query(1,1,l-1);op2=query(1,l,r);op3=query(1,r+1,n);swap(op2.re,op2.er);swap(op2.rd,op2.dr);swap(op2.ed,op2.de);swap(op2.red,op2.der);node op12,op123;pushup(op12,op1,op2);pushup(op123,op12,op3);// print_op(op1);// print_op(op2);// print_op(op3);cout<<op123.red<<'\n';//cout<<"\n\n\n";}
}/*r e dred der red
r e d*/
signed main()
{//freopen("in.in", "r", stdin);//freopen("out.out", "w", stdout);IOS;int _ = 1; //cin >> _;while (_--) solve();return 0;
}
相关文章:
牛客周赛63
https://ac.nowcoder.com/acm/contest/91592 好数 简单的判断两位数,且十位等于个位 #include <bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define int long long using namespace std; using ll long long; using pii …...
git restore恢复删除文件
新版本 在 Git 2.23 版本之后,Git 引入了一个新的命令 git restore,用于简化文件恢复操作。可以用 git restore 来恢复误删除的文件。下面是详细的使用方法: 1. 恢复工作区中删除的文件(未提交) 如果文件已被删除&a…...

MacOS13虚拟机VMware Workstation Pro 16安装
资源 安装unlocker 安装虚拟机 低版本的还没有MacOS13选项,这也是我安装低版本虚拟机踩过的坑 找个教程安装就可以了 省略…自己去找找教程… 过程中我使用桥接是不行的,没有网络,后面重新下一步一步的选择默认的网络重装后就好了&am…...
docker 数据管理,数据持久化详解 一
docker镜像是分层设计的,镜像出只读,通过镜像启动的容器添加一层可读写的文件系统,用户写入的数据表都保存在这层中。 容器的数据分层目录 LowerDir:image 镜像层,即镜像本身,制度 UpperDir:容…...

【ios】使用TestFlight将app分发给测试人员(超详细)
我的环境: macos系统是Ventura 13.0 xcode是14.2(后面发现至少需要15版本的xcode才能上传app) 证书生成 可以通过xcode生成Distribution类型的证书,如果你已经有的话那就忽略,这个证书也是备案时所需的。 我是已…...

证件照小程序源码,前后端稳定运行
演示:证寸照制作 运行环境: Linux Nginx PHP >5.6 MySQL>5.6 安装步骤: 1.下载源码上传至你的服务器宝塔面板 2.直接添加站点选择源码目录,新建数据库 3.设置代码执行目录为/web 4.在浏览器中输入你的域名,会提示安装,填写…...
java白嫖同事的从身份证里面提取省市区地址详细信息的工具类代码
/*** author sunpeiyang* date 2024/10/21 16:35*/ Slf4j public class MiTaAddressExtractor {/*** 获取详细地址** param fullAddress 身份证完整地址*/public static String getDetailedAddress(String fullAddress) {String[] addressArrays spliceDetailedAddress(fullAd…...
计算机网络基本架构示例2
一、企业内部网络架构 在一个中型企业中,通常会有以下的网络架构: - 核心层:由高性能的核心交换机组成,负责快速转发大量数据。例如采用具有高带宽和冗余功能的三层交换机,确保整个网络的稳定运行。它连接着各个部门的…...

无人机之室内定位技术篇
无人机的室内定位技术是实现无人机在室内环境中精准导航和定位的关键技术。由于室内环境复杂,卫星导航系统(如GPS)无法提供有效的信号,因此需要依赖其他室内定位技术。 一、主要技术类型 基于视觉的定位技术 原理:利…...
在ubuntu20.04中输入不存在shell命令时,报错ModuleNotFoundError的解决方案
这个问题出现过好几次,每次都比较困扰,以下的解决方案比较适合: 当我输入ubuntu无法识别的命令的时候,正常来说应该提示类似于 command not found 之类的字眼,但是系统确报了如下错误: Traceback (most r…...

互联网语言 互联网开发 互联网架构
JAVA和PHP是两种广泛应用于互联网开发的编程语言,它们在多个维度上展现出显著的不同。 JAVA是一种面向对象的编程语言,以其严谨、高效的特性而著称。JAVA的语法结构复杂且规范,强调封装、继承和多态等面向对象原则,适合构建大型企…...
解决MybatisPlus updateById更新数据时将没传的数据也更新成了null
首先,MybatisPlus在调用自带的更新接口updateById时,如果没加任何配置,默认是不会将前端没传的数据也更新成null的。即MyBatisPlus不会更新传入实体中为null的字段,只会更新设置了不为null的值。 如果发现没传的也更新成null了的话…...

OpenWRT 和 Padavan 路由器配置网络打印机 实现远程打印
本文首发于只抄博客,欢迎点击原文链接了解更多内容。 前言 之前有给大家介绍过 Armbian 安装 CUPS 作为打印服务器,像是 N1 盒子、玩客云,甚至是随身 WiFi 都可以通过 CUPS 来进行打印。但是有些朋友不想专门为打印机添置一个设备࿰…...

R语言机器学习教程大纲
文章目录 介绍机器学习算法监督学习Supervised Learning分类Classification回归Regression 无监督学习 Unsupervised Learning聚类 Clustering降纬 Dimensionality Reduction相关Association 强化学习Reinforcement Learning模型自由 Model-Free Methods模型驱动 Model-Based M…...

java如何部署web后端服务
java如何部署web后端服务 简单记录一下,方便后续使用。 部署流程 1.web打包 2.关掉需要升级的运行中的服务 /microservice/hedgingcustomer-0.0.1-SNAPSHOT/conf/bin/ 执行脚本 sh shutdown.sh 3.解压文件 返回到/microservice 将升级包上传到该路径&#x…...
第八课 Vue中的v-bind指令
Vue中的v-bind指令 v-bind用于属性绑定,使得属性可以动态修改 v-bind动态修改class 动态修改的class名来源于data对象,而非手动给定 基础示例 <style>div{width: 100px;height: 100px;border: 3px solid #000;}.bg {background: red;}</sty…...

基于STM32的智能电能表设计
引言 本项目设计了一个基于STM32的智能电能表系统,能够实时测量家用电器的电压、电流、功率和电能消耗。该系统集成了电压电流传感器、显示屏、通信模块等,能够实现电能测量、数据显示、数据存储和远程传输功能,适用于家庭、工业等场景的电能…...

开启学习与探索之旅,自闭症学校全托为孩子打造温馨成长环境
原文指路:http://www.zibizhengwang.com/page33.html 在广州这座繁华都市的一隅,有一所特别的学校——星贝育园自闭症儿童寄宿制学校,它如同一座灯塔,照亮了自闭症儿童的学习与成长之路。在这里,每一个孩子都被视为独…...

多线程编程简单例题(3个线程) Linux环境 C语言实现
问题:编写程序完成如下功能:程序创建2个线程,然后: 1> 主线程先打印“I am main thread”,然后睡眠2秒后,打印"main thread wake up",主线程退出 2> 第一个新线程先打印“…...

UG NX12.0建模入门笔记:1.2 鼠标的基本操作
文章目录 前言:鼠标的操作1.鼠标左键:单击—>单选;长按并滑动—>框选。2.鼠标右键:在不同的地方单击弹出不同的菜单。3.鼠标中键:滚动中键—>放大缩小【镜头拉近拉远】。4.鼠标中键:摁住鼠标中键&…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

蓝桥杯3498 01串的熵
问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798, 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...

C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...

Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...

WPF八大法则:告别模态窗口卡顿
⚙️ 核心问题:阻塞式模态窗口的缺陷 原始代码中ShowDialog()会阻塞UI线程,导致后续逻辑无法执行: var result modalWindow.ShowDialog(); // 线程阻塞 ProcessResult(result); // 必须等待窗口关闭根本问题:…...
HTML前端开发:JavaScript 获取元素方法详解
作为前端开发者,高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法,分为两大系列: 一、getElementBy... 系列 传统方法,直接通过 DOM 接口访问,返回动态集合(元素变化会实时更新)。…...