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

K-独立钻石(dfs),G-邪恶铭刻(贪心)

这两题,都是应该赛场上A出来的。

K.独立钻石

在这里插入图片描述
在这里插入图片描述

当时一直关注点在 I. Path Planning,没关注榜单,K,也能写,也就是dfs,从数据范围可以看出,直接暴力搜索。

代码

#include<bits/stdc++.h>
#define int long long 
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
using namespace std;
int n,m,kk,x,y,a[15][15],ans;
int b[4][2]={{-1,0},{1,0},{0,-1},{0,1}};
void dfs()
{ans=min(kk,ans);for(int i=1;i<=n;i++)for(int j=1;j<=m;j++){ if(a[i][j]==1){for(int l=0;l<4;l++){int ii=i+b[l][0],jj=j+b[l][1];if(a[ii][jj]==1){int iii=ii+b[l][0],jjj=jj+b[l][1];if(a[iii][jjj]==0&&iii>=1&&iii<=n&&jjj>=1&&jjj<=m)//这个范围要界定{kk--;a[i][j]=0,a[ii][jj]=0,a[iii][jjj]=1;//补题时,错写成双等,又费了不少时间dfs();kk++;a[i][j]=1,a[ii][jj]=1,a[iii][jjj]=0;}}}}	}
}
void solve()
{memset(a,0,sizeof(a));cin>>n>>m>>kk;for(int i=0;i<kk;i++){cin>>x>>y;a[x][y]=1;}ans=kk;dfs();cout<<ans<<'\n';
}
signed main()
{ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int t;cin>>t;while(t--)solve();return 0;
}

G.邪恶铭刻

在这场中,只写出一道签到题,此题并不难,也不复杂,从前往后算就行了。当时,第一思路,先入为主,一直被绕在里边,改了十几次,改一次,发现一个漏洞,一直在完善特判,应该想到,既然有那么多漏洞,那思路方法就有问题,肯定有更优解法,答案也是这样,将近五个小时的debug太傻了,毫无用处。
(错误思路:考虑1,-1,过程中用1,0作-1的弥补,最后将剩余0判断变成什么,其实究竟如何,心里是没底的,妄想投机取巧。判断剩余0,也是多此一举,遍历中已经可以得到答案)

正确: 0优先考虑-1,否则1,当遇到-1,且分母不足时,就将变为-1 的0再变回来

最大公约数 __gcd(p,q)

代码

#include<bits/stdc++.h>
using namespace std;
#define int long long
void solve()
{int p=1,q=1,n,sum=0,f=0;cin>>n;while(n--){int k;cin>>k;	if(f==0){if(k==0){if(q<2) p++,q++;else q--,sum++;}else if(k==1)p++,q++;else{if(q<2) {if(sum<1) {cout<<"-1"<<'\n';f=1;}else    sum--,p++,q++;}else q--;	}			}}if(f==0)	cout<<p/__gcd(p,q)<<" "<<q/__gcd(p,q)<<'\n';
}
signed main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int t;cin>>t;while(t--){solve();	} return 0;
}

相关文章:

  • 反编译 Trino Dockerfile
  • 基于单片机的自行车里程监测系统的设计
  • 撤销最近一次的提交,使用git revert 和 git reset的区别
  • 【HarmonyOS尝鲜课】- 前言
  • TransFormer学习之VIT算法解析
  • 【调试笔记-20240525-Windows-配置 QEMU/x86_64 运行 OpenWrt-23.05 发行版并搭建 WordPress 博客网站】
  • 汽车制造业安全有效的设计图纸文件外发系统是什么样的?
  • Scala的简单学习一
  • 【JavaEE 初阶(十)】JVM
  • 【秒杀系统】从零开始打造简易秒杀系统(一):防止超卖
  • mysql实战——xtrabackup全量备份/增量备份及恢复
  • 机械产品3d模型网站让您的展示内容更加易于分享和传播
  • 大模型基础知识
  • 记录一次安装k8s初始化失败
  • 介绍下 npm 模块安装机制,为什么输入 npm install 就可以自动安装对应的模块
  • 【跃迁之路】【733天】程序员高效学习方法论探索系列(实验阶段490-2019.2.23)...
  • 2017-09-12 前端日报
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • CSS中外联样式表代表的含义
  • Effective Java 笔记(一)
  • JavaScript 基本功--面试宝典
  • JDK 6和JDK 7中的substring()方法
  • JS专题之继承
  • uni-app项目数字滚动
  • vue-loader 源码解析系列之 selector
  • zookeeper系列(七)实战分布式命名服务
  • 动态魔术使用DBMS_SQL
  • 给Prometheus造假数据的方法
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 项目管理碎碎念系列之一:干系人管理
  • 新书推荐|Windows黑客编程技术详解
  • 异步
  • 鱼骨图 - 如何绘制?
  • 字符串匹配基础上
  • ​configparser --- 配置文件解析器​
  • #{} 和 ${}区别
  • #单片机(TB6600驱动42步进电机)
  • (c语言+数据结构链表)项目:贪吃蛇
  • (补充):java各种进制、原码、反码、补码和文本、图像、音频在计算机中的存储方式
  • (二)正点原子I.MX6ULL u-boot移植
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (回溯) LeetCode 131. 分割回文串
  • (论文阅读26/100)Weakly-supervised learning with convolutional neural networks
  • (强烈推荐)移动端音视频从零到上手(下)
  • (转) SpringBoot:使用spring-boot-devtools进行热部署以及不生效的问题解决
  • (转)iOS字体
  • (转)linux下的时间函数使用
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .net 7 上传文件踩坑
  • .NET CF命令行调试器MDbg入门(一)
  • .NET MVC之AOP
  • .NET/C# 检测电脑上安装的 .NET Framework 的版本
  • .NetCore 如何动态路由
  • .NET基础篇——反射的奥妙
  • @Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成