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

笔试——Day47

文章目录

  • 第一题
    • 题目
    • 思路
    • 代码
  • 第二题
    • 题目
    • 思路
    • 代码
  • 第三题
    • 题目
    • 思路
    • 代码

第一题

题目

BC138 矩阵转置

在这里插入图片描述

思路

模拟 : 坐标转换

代码

#include <iostream>
using namespace std;int arr[15][15];
int res[15][15];
int n, m;int main() 
{cin >> n >> m;for(int i = 1; i <= n; i++){for(int j = 1; j <= m; j++){cin >> arr[i][j];res[j][i] = arr[i][j];}}for(int i = 1; i <= m; i++){for(int j = 1;j <= n; j++){cout << res[i][j] << " ";}cout << endl;}return 0;
}
// 64 位输出请用 printf("%lld")

第二题

题目

四个选项

在这里插入图片描述

思路

DFS 枚举12个位置可能得4个选项

注意剪支:

  • 判断当前选项是否还有剩余;
  • 判断当前选项是否和前方选项相同;

代码

#include <iostream>
#include <vector>using namespace std;int arr[6];
bool same[13][13]; // i, j 的答案相同
int res;
vector<int> path; // 记录路径⾥⾯选了哪些选项bool isSame(int pos, int cur)// pos 位置填 cur ,是否符合要求
{for(int i = 1; i < pos; i++){if(same[pos][i] && path[i] != cur) return false;}return true;}void dfs(int pos)
{if(pos > 12){res++;return ;}for(int i = 1; i <= 4; i++){if(arr[i] == 0) continue; // 选项已经用完了if(!isSame(pos, i)) continue; arr[i]--;path.push_back(i);dfs(pos + 1);path.pop_back();arr[i]++;}}int main()
{for(int i = 1; i <= 5; i++) cin >> arr[i];int t = arr[5];while(t--){int x, y;cin >> x >> y;same[x][y] = same[y][x] = true;}path.push_back(0); // 填 0 位置(类似于占位符)dfs(1);cout << res <<endl;return 0;
}

第三题

题目

42. 接雨水
在这里插入图片描述

思路

利用两个数组,来统计,当前位置左右的最高柱子;
则当前位置能容纳的水的数量,等于 当前位置左右最高柱子的最小值间当前位置

代码

class Solution {
public:int trap(vector<int>& height) {int n = height.size();vector<int> left(n);auto right = left;left[0] = height[0];for(int i = 1; i < n; i++){left[i] = max(left[i - 1], height[i]);}right[n - 1] = height[n - 1];for(int i = n - 2; i >= 0; i--){right[i] = max(right[i + 1], height[i]);}int res = 0;for(int i = 0; i < n; i++){res += min(left[i], right[i]) - (height[i]);}return res;}
};
http://www.dtcms.com/a/347568.html

相关文章:

  • 张老师---个人师资介绍
  • python学习DAY49打卡
  • 智慧矿山误报率↓83%!陌讯多模态融合算法在矿用设备监控的落地优化
  • 鸿蒙中CPU活动分析:CPU分析
  • 周末总结(2024/08/23)
  • 数组拆分求最大不重复数和(动态规划解法)
  • Linux内核进程管理子系统有什么第三十三回 —— 进程主结构详解(29)
  • java猜数字游戏(赌城主题版)
  • 注意力机制:捕获长距离依赖关系的革命性技术
  • mysqlbinlog解析命令
  • 订单号老是撞车?我写了个通用 PHP ID 生成器
  • linux添加新硬盘挂载分区和数据迁移
  • 云计算之云主机Linux是什么?有何配置?如何选?
  • Agent原理、构建模式(附视频链接)
  • Python打卡Day50 预训练模型+CBAM模块
  • 【Camera驱动】GMS测试项中Camera FOV Calibration问题详解
  • ROS机器人运动控制
  • 布偶猫吃什么猫粮比较好?2025猫粮品牌排名
  • 如何创建自己的 Minecraft 世界
  • 8月23号打卡
  • MySql知识梳理之DML语句
  • FL Studio Win版.exe安装教程(直接安装版/详细步骤/附安装包下载)
  • 基于STM32的病房监测系统/环境监测系统/人体健康监测系统
  • 曲面方程的三维可视化:从数学解析到Python实现
  • 分割等和子集
  • React学习(十)
  • 【LeetCode】85. 最大矩形 (暴力枚举)
  • 某铝业智慧工厂网络建设优化方案实践
  • 使用tensorRT10部署yolov5目标检测模型(2)
  • 【深度学习】深度学习中的结构化概率模型:理论、方法与应用