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

暑假刷题第20天--8/3

B-序列的与和_2023河南萌新联赛第(四)场:河南大学 (nowcoder.com)(dfs)

#include<iostream>
#include<string>
using namespace std;
#define ull unsigned long long
int n,k;
ull a[21];
ull ans=0;
int check(ull sum){int q=0;while(sum){q++;sum&=(sum-1);}return q;
}
void dfs(int x,ull sum){if(check(sum)==k)ans++;for(int i=x+1;i<=n;i++){dfs(i,sum&a[i]);}
}
int main(){cin>>n>>k;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=n;i++){dfs(i,a[i]);}cout<<ans<<endl;
}

D-幂运算_2023河南萌新联赛第(四)场:河南大学 (nowcoder.com)(快速幂类似)

#include<iostream>
#include<string>
using namespace std;
long long qowe(long long a,long long n,long long p){//指数幂long long ans=2;while(n){ans=(long long)ans*ans%p;a=(long long)a*a%p;n=n-1;}return ans;
}
int main(){int n,k;cin>>n>>k;cout<<qowe(2,n,k);
}

P4554 小明的游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)(双端队列bfs--模板)

#include<iostream>
#include<string>
#include<vector>
#include<deque>
#include<cstring>
using namespace std;
int n,m;
struct node{int xx,yy,step;
};
string s[505];
int x1,y1,a,b;
bool vis[505][505];
int cnt[4][2]={{1,0},{0,1},{-1,0},{0,-1}};
int in(int x,int y){if(x<0||y<0||x>=n||y>=m)return 0;return 1;
}
int bfs(int x,int y){node c;c.xx=x,c.yy=y,c.step=0;deque<node>q;q.push_front(c);while(!q.empty()){node temp=q.front();q.pop_front();node now;vis[temp.xx][temp.yy]=true;if(temp.xx==a&&temp.yy==b)return temp.step;for(int i=0;i<4;i++){now.xx=temp.xx+cnt[i][0];now.yy=temp.yy+cnt[i][1];if(!vis[now.xx][now.yy]&&in(now.xx,now.yy)&&s[temp.xx][temp.yy]==s[now.xx][now.yy]){now.step=temp.step;q.push_front(now);}else if(!vis[now.xx][now.yy]&&in(now.xx,now.yy)&&s[temp.xx][temp.yy]!=s[now.xx][now.yy]){now.step=temp.step+1;q.push_back(now);}}}return 0;
}
int main(){while(cin>>n>>m&&(n||m)){for(int i=0;i<n;i++){cin>>s[i];}cin>>x1>>y1>>a>>b;memset(vis,0,sizeof(vis));cout<<bfs(x1,y1)<<"\n";}
}

Labyrinth - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)(双端队列bfs)

#include<iostream>
#include<string>
#include<vector>
#include<deque>
#include<cstring>
#include<queue>
using namespace std;
const int N=2005;
int n,m;
struct node{int xx,yy,step1,step2;
};
string s[N];
int x1,y1,a,b;
bool vis[N][N];
int cnt[4][2]={{1,0},{-1,0},{0,-1},{0,1}};
int ans=1;
int in(int x,int y){if(x<0||y<0||x>=n||y>=m)return 0;return 1;
}
int bfs(int x,int y){node c;c.xx=x,c.yy=y,c.step1=0,c.step2=0;deque<node>q;q.push_front(c);vis[x][y]=true;while(!q.empty()){node temp=q.front();q.pop_front();node now;for(int i=0;i<4;i++){now.xx=temp.xx+cnt[i][0];now.yy=temp.yy+cnt[i][1];if(!in(now.xx,now.yy)||vis[now.xx][now.yy]||s[now.xx][now.yy]=='*')continue;if(i==0||i==1){now.step1=temp.step1;now.step2=temp.step2;q.push_front(now);vis[now.xx][now.yy]=true;ans++;}else if(i==2){if(temp.step1>=a)continue;now.step1=temp.step1+1;now.step2=temp.step2;q.push_back(now);vis[now.xx][now.yy]=true;ans++;}else if(i==3){if(temp.step2>=b)continue;now.step1=temp.step1;now.step2=temp.step2+1;q.push_back(now);vis[now.xx][now.yy]=true;ans++;}}}return 0;
}
int main(){cin>>n>>m;cin>>x1>>y1>>a>>b;for(int i=0;i<n;i++){cin>>s[i];}bfs(x1-1,y1-1);cout<<ans<<"\n";
}

175. 电路维修 - AcWing题库(双端队列bfs)

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <deque>
using namespace std;
typedef pair<int, int > PII;
int n, m;
const int N = 510;
char g[N][N];
int d[N][N];
inline bool check(int x, int y)
{if(x >= 0 && x <= n && y >= 0 && y <= m) return true;return false;
}
inline int bfs()
{memset(d, 0x3f, sizeof d);deque<PII> dq;dq.push_front({0, 0});d[0][0] = 0;int moved[4][2] = {{-1, -1},{-1, 1},{1, 1},{1, -1}};int movei[4][2] = {{-1, -1},{-1, 0},{0, 0},{0, -1},};char cp[] = "\\/\\/";while(dq.size()){auto t = dq.front();dq.pop_front();int x = t.first, y = t.second;for(int i = 0; i < 4; i ++){int a = x + moved[i][0], b = y + moved[i][1];if(check(a, b)){int j = x + movei[i][0], k = y + movei[i][1];int w;if(g[j][k] != cp[i]) w = 1;else w = 0;if(d[a][b] > d[x][y] + w){d[a][b] = d[x][y] + w;if(w) dq.push_back({a, b});else dq.push_front({a, b});}}}}if(d[n][m] == 0x3f3f3f3f) return -1;else return d[n][m];
}inline void solve()
{cin >> n >> m;for(int i = 0; i < n; i ++) cin >> g[i];int res = bfs();if(res == -1) puts("NO SOLUTION");else cout << res << endl;
}
int main()
{int t;cin >> t;while( t -- ) solve();return 0;
}

相关文章:

暑假刷题第20天--8/3

B-序列的与和_2023河南萌新联赛第&#xff08;四&#xff09;场&#xff1a;河南大学 (nowcoder.com)&#xff08;dfs&#xff09; #include<iostream> #include<string> using namespace std; #define ull unsigned long long int n,k; ull a[21]; ull ans0; int…...

docker容器内的django启动celery任务队列

问题1&#xff1a; celery任务队列一般要使用redis&#xff0c;但是容器内的django要访问本机的redis是十分麻烦的 解决2&#xff1a; 在容器内安装redis&#xff0c;或者单独启动一个redis的容器&#xff0c;我是单独启动一个redis容器 安装redis镜像docker pull redis启动…...

linux文件描述符fd

文件描述符 fd是一个>0 的整数 每打开一个文件&#xff0c;就创建一个文件描述符&#xff0c;通过文件描述符来操作文件 预定义的文件描述符: 0:标准输入&#xff0c;对应于已打开的标准输入设备(键盘) 1:标准输出&#xff0c;对应于已打开的标准输出设备(控制台) 2.标准错误…...

【深度学习】各个开源库总结及实战-总目录

前言 此专栏主要是用MMCV和PaddlePaddle,它们都是优秀的开源库,用于计算机视觉和深度学习任务。MMCV提供了丰富的计算机视觉工具和算法,基于PyTorch框架,适合对PyTorch熟悉的用户。PaddlePaddle是百度开发的深度学习平台,提供易用且高性能的深度学习框架。 此专栏主要包括…...

Unity Shader:闪烁

还是一样的分为UI闪烁和物体闪烁&#xff0c;其中具体可分为&#xff1a;UI闪烁、物体闪烁与半透明闪烁 1&#xff0c;UI闪烁 对于UI 还是一样的&#xff0c;改写UI本身的shader&#xff1a; Shader "UI/YydUIShanShder" {Properties{[PerRendererData] _MainTex(…...

c++开发模式桥接模式

将抽象部分与它的实现部分分离&#xff0c;使它们都可以独立地变化。它是一种对象结构型模式&#xff0c;又称为柄体(Handle and Body)模式或接口(Interface)模式。 #include <iostream> using namespace std;// Abstractionclass Abstraction { public:virtual void Op…...

javaScript 树形结构 递归查询方法。

1. 函数递归定义 程序调用自身的编程技巧称为递归&#xff08; recursion&#xff09;。 2.使用条件 1.存在限制条件&#xff0c;当满足这个限制条件的时候&#xff0c;递归便不再继续。 2.每次递归调用之后越来越接近这个限制条件。 3.既然是自己调用自己&#xff0c;那么整个…...

MySQL语法2

DQL语句介绍 DQL是数据查询语言&#xff0c;用来查询数据库中表的记录 DQL-基本查询语句 SELECT 字段列表 FROM 表名列表 WHERE 条件列表 GROUP BY 分组字段列表 HAVIMG 分组后条件列表 ORDER BY 排列字段列表 LIMIT 分页参数 讲解过程&#xff1a;基本查询、条件查询…...

Mysql on duplicate key update用法及优缺点

在实际应用中&#xff0c;经常碰到导入数据的功能&#xff0c;当导入的数据不存在时则进行添加&#xff0c;有修改时则进行更新&#xff0c; 在刚碰到的时候&#xff0c;一般思路是将其实现分为两块&#xff0c;分别是判断增加&#xff0c;判断更新&#xff0c;后来发现在mysql…...

【Linux】-进程概念之进程优先级(如何去进行调度以及进程切换),还不进来看看??

&#x1f496;作者&#xff1a;小树苗渴望变成参天大树&#x1f388; &#x1f389;作者宣言&#xff1a;认真写好每一篇博客&#x1f4a4; &#x1f38a;作者gitee:gitee✨ &#x1f49e;作者专栏&#xff1a;C语言,数据结构初阶,Linux,C 动态规划算法&#x1f384; 如 果 你 …...

《在细雨中呼喊》阅读笔记

《在细雨中呼喊》阅读笔记 2023年2月5号在家读完&#xff0c;本书就是以作者者回忆的形式来写&#xff0c;男一号叫孙光林&#xff0c;有一个哥哥孙光平&#xff0c;一个弟弟叫孙光明&#xff0c;父亲叫孙光才。书中写了四篇故事。 第一篇写的就是作者对于老家生活的回忆 小的时…...

01-1 搭建 pytorch 虚拟环境

pytorch 管网&#xff1a;PyTorch 一 进入 Anaconda 二 创建虚拟环境 conda create -n pytorch python3.9注意要注意断 VPN切换镜像&#xff1a; 移除原来的镜像 # 查看当前配置 conda config --show channels conda config --show-sources# 移除之前的镜像 conda config --…...

RocketMQ 事务消息

事务消息是 RocketMQ 的高级特性之一 。这篇文章&#xff0c;笔者会从应用场景、功能原理、实战例子三个模块慢慢为你揭开事务消息的神秘面纱。 1 应用场景 举一个电商场景的例子&#xff1a;用户购物车结算时&#xff0c;系统会创建支付订单。 用户支付成功后支付订单的状态…...

Windows安装ElasticSearch

安装环境&#xff1a;java环境。新版本需要安装高版本的java&#xff0c;所有本次安装的为 7.x版本的ElasticSearch 。所以要java11 1、安装java11 2、下载 Elasticsearch 安装包 官网地址&#xff1a;(https://www.elastic.co/cn/) 安装包下载地址&#xff1a;https://www…...

【深度学习】SMILEtrack: SiMIlarity LEarning for Multiple Object Tracking,论文

论文&#xff1a;https://arxiv.org/abs/2211.08824 代码&#xff1a;https://github.com/WWangYuHsiang/SMILEtrack 文章目录 AbstractIntroductionRelated WorkTracking-by-DetectionDetection methodData association method Tracking-by-Attention Methodology架构概述外观…...

【Kubernetes】Kubernetes之二进制部署

kubernetes 一、Kubernetes 的安装部署1. 常见的安装部署方式1.1 Minikube1.2 Kubeadm1.3 二进制安装部署2. K8S 部署 二进制与高可用的区别2.1 二进制部署2.2 kubeadm 部署二、Kubernetes 二进制部署过程1. 服务器相关设置以及架构2. 操作系统初始化配置3. 部署 etcd 集群4. 部…...

京东开源的、高效的企业级表格可视化搭建解决方案:DripTable

DripTable 是京东零售推出的一款用于企业级中后台的动态列表解决方案&#xff0c;项目基于 React 和 JSON Schema&#xff0c;旨在通过简单配置快速生成页面动态列表来降低列表开发难度、提高工作效率。 DripTable 目前包含以下子项目&#xff1a;drip-table、drip-table-gene…...

STL C++学习背景

STL C学习背景 背景知识 背景知识 STL前置知识 STL&#xff0c;英文全称 standard template library&#xff0c;中文可译为标准模板库或者泛型库&#xff0c;其包含有大量的模板类和模板函数&#xff0c;是 C 提供的一个基础模板的集合&#xff0c;用于完成诸如输入/输出、数…...

C#踩坑:谨慎在XML数据列上绑定鼠标事件!

按照计划&#xff0c;昨天晚上就完成最后的公式自动计算&#xff0c;程序的流程就算完整了&#xff0c;可以正常运行了&#xff0c;一般情况下&#xff0c;是可以完成的。 10点开始干&#xff0c;窗体上放置一个Treeview&#xff0c;然后针对XML对Treeview进行数据绑定&#xf…...

逻辑代数运算

逻辑代数运算中的三种基本运算 与&#xff08;AND&#xff09;&#xff1a;只有满足全部条件&#xff0c;才会产生结果 或&#xff08;OR&#xff09; &#xff1a;只要满足一个条件&#xff0c;就会产生结果 非&#xff08;NOT&#xff09;&#xff1a;只要满足条件&#xff…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

在 Spring Boot 中使用 JSP

jsp&#xff1f; 好多年没用了。重新整一下 还费了点时间&#xff0c;记录一下。 项目结构&#xff1a; pom: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://ww…...

区块链技术概述

区块链技术是一种去中心化、分布式账本技术&#xff0c;通过密码学、共识机制和智能合约等核心组件&#xff0c;实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点&#xff1a;数据存储在网络中的多个节点&#xff08;计算机&#xff09;&#xff0c;而非…...

macOS 终端智能代理检测

&#x1f9e0; 终端智能代理检测&#xff1a;自动判断是否需要设置代理访问 GitHub 在开发中&#xff0c;使用 GitHub 是非常常见的需求。但有时候我们会发现某些命令失败、插件无法更新&#xff0c;例如&#xff1a; fatal: unable to access https://github.com/ohmyzsh/oh…...