1.15火星人(全排列+变进制数),涂国旗(搜索)

P1088 [NOIP2004 普及组] 火星人

首先是要得到当前排序的排名,其次是要得到它的排名

n进制就是说满n就进,该位上不可能保持为n,最多保持为n-1;

变进制数

#include<iostream>
#include<iomanip>
#include<vector>
using namespace std;
const int maxn = 100005;
int n, m, arr[maxn], used[maxn];
int main() {
    cin >> n >> m;
    for (int i = 1; i <= n; i++) {
        cin >> arr[i];//原数字
        int x = arr[i];
        for (int j = 1; j <= arr[i]; j++) {
            if (used[j]) {
                x--;
            }//得到是当前的第几个选择,如果中间的数已经被用过,那就是当前的选择依次往前走
        }//表示说这个数都是被用过的了
        used[arr[i]] = 1;
        arr[i] = x - 1;
    }
    arr[n] = m;
    for (int i = n; i >= 1; i--) {
        arr[i - 1] = arr[i - 1] + arr[i] / (n - i + 1);
        arr[i] = arr[i] % (n - i + 1);
        used[i] = 0;
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 0; j <= arr[i]; j++) {
            arr[i] += used[j];
        }
        cout << arr[i] + 1 << " ";
        used[arr[i]] = 1;
    }
    return 0;
}

就是需要注意进制转换的时候的细节问题

还有就是转换为后序进制数时,arr[i]在转化过程中是逐渐增加的,

P3392 涂国旗

要搜索的话,关键在于怎么确定搜索的目标,

搜索的目的,就是搜两行,即两行分界线,然后去找代价最小的分界线位置

#include<iostream>
#include<iomanip>
#include<vector>
#include<string>
using namespace std;
const int maxn = 100005;
int n, m, w[55], b[55], r[55], ans = 1e9;//表示的是前i行(包括这一行)要涂成这个颜色要花费的颜料数量
string s;
int main() {
    cin >> n >> m;
    for (int i = 1; i <= n; i++) {
        cin >> s;
        for (int j = 0; j < s.size(); j++) {
            if (s[j] != 'W') {
                w[i]++;
            }
            if (s[j] != 'R') {
                r[i]++;
            }
            if (s[j]!='B'){
                b[i]++;
            }
            w[i + 1] = w[i];
            b[i + 1] = b[i];
            r[i + 1] = r[i];
        }
    }
    for (int i = 1; i <= n-2; i++) {//这一行往上是白色
        for (int j = i + 1; j <= n-1; j++) {//这一行往上是蓝色(包括这一行)
            ans = min(ans, w[i] + b[j] - b[i] + r[n] - r[j]);
        }
    }
    cout << ans;
    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/344540.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

力扣518. 零钱兑换 II

动态规划 思路&#xff1a; 假设 dp[i] 为金额 i 使用零钱的组合数&#xff0c;其可以由其中的一种零钱 coin 和 i - coin 组合&#xff1b; 遍历零钱数组&#xff0c;对每一种零钱 coin 进行如下操作&#xff1a; 从 coin 到 amount 金额进行遍历&#xff0c;dp[j] dp[j] d…

【深度学习:Collaborative filtering 协同过滤】深入了解协同过滤:技术、应用与示例

此图显示了使用协作筛选预测用户评分的示例。起初&#xff0c;人们会对不同的项目&#xff08;如视频、图像、游戏&#xff09;进行评分。之后&#xff0c;系统将对用户对项目进行评分的预测&#xff0c;而用户尚未评分。这些预测基于其他用户的现有评级&#xff0c;这些用户与…

安全基础~通用漏洞1

文章目录 知识补充Acess数据库注入MySQL数据库PostgreSQL-高权限读写注入MSSQL-sa高权限读写执行注入Oracle 注入Mongodb 注入sqlmap基础命令 知识补充 order by的意义&#xff1a; union 操作符用于合并两个或多个 select语句的结果集。 union 内部的每个 select 语句必须拥有…

k8s详细教程(二)

5. Pod 详解 5.1 Pod 介绍 5.1.1 Pod 结构 每个 Pod 中都可以包含一个或者多个容器&#xff0c;这些容器可以分为两类&#xff1a; 用户程序所在的容器&#xff0c;数量可多可少Pause 容器&#xff0c;这是每个 Pod 都会有的一个根容器&#xff0c;它的作用有两个&#xff1…

感性负载对电路稳定性有什么影响?

感性负载是指带有电感元件的负载&#xff0c;如电动机、变压器等。在电路中&#xff0c;感性负载对电路稳定性有很大的影响。本文将从以下几个方面来分析感性负载对电路稳定性的影响&#xff1a; 当感性负载接通或断开时&#xff0c;会产生一个瞬时电流&#xff0c;这个瞬时电流…

GPT5?OpenAI 创始人:GPT5 已在训练中,需要更多数据

OpenAI 最近发出征集大规模数据集的呼吁&#xff0c;特别是“今天在互联网上尚未公开轻松获取”的数据集&#xff0c;尤其是长篇写作或任何格式的对话。 GPT-5丨AI浪潮席卷全球&#xff0c;OpenAI 推出GPT-4 后&#xff0c;又于上月26日宣布今年9月、10月将推出GPT-4.5&#xf…

C++PythonC# 三语言OpenCV从零开发(4):视频流读取

文章目录 相关链接视频流读取CCSharpPython 总结 相关链接 C&Python&Csharp in OpenCV 专栏 【2022B站最好的OpenCV课程推荐】OpenCV从入门到实战 全套课程&#xff08;附带课程课件资料课件笔记&#xff09; OpenCV 教程中文文档|OpenCV中文 OpenCV教程中文文档|W3Csc…

第九篇 华为云Iot SDK的简单应用

第九篇 华为云Iot SDK的简单应用 一、华为云Iot SDK API的简单使用 1.初始化SDK 2.绑定连接配置信息 3.连接服务器 4.上报属性 5.接收命令 二、实现智能家居灯光状态上报 &#x1f516;以下是上报数据到华为云Iot的代码片段&#xff0c;配合串口控制灯光&#xff0c;改变灯…

【论文阅读】Automated Runtime-Aware Scheduling for Multi-Tenant DNN Inference on GPU

该论文发布在 ICCAD’21 会议。该会议是EDA领域的顶级会议。 基本信息 AuthorHardwareProblemPerspectiveAlgorithm/StrategyImprovment/AchievementFuxun YuGPUResource under-utilization ContentionSW SchedulingOperator-level schedulingML-based scheduling auto-searc…

Ant Design Vue详解a-tree-select使用树形选择器,递归渲染数据,点击选项回显,一二级菜单是否可选等问题

后台给的树形数据&#xff1a; {"code": 200,"data": [{"code": "jsd","children": [{"code": "hx","children": [],"name": "航向","id": 8,"libTable…

Vue开始封装全局防抖和节流函数

封装文件 封装文件的实现思路如下&#xff1a; 首先&#xff0c;我们需要定义两个函数&#xff1a;防抖函数和节流函数。这两个函数的目的是为了减少频繁触发某个事件导致的性能问题&#xff1b;防抖函数的实现思路是创建一个计时器变量&#xff0c;用于延迟执行函数。当触发…

ubuntu下docker卸载和重新安装

卸载&#xff1a;步骤一&#xff1a;停止Docker服务 首先&#xff0c;我们需要停止正在运行的Docker服务。打开终端&#xff0c;执行以下命令&#xff1a; sudo systemctl stop docker 步骤二&#xff1a;删除Docker安装包 接下来&#xff0c;我们需要删除已经安装的Docker软件…

Android 渲染机制

1 Android 渲染流程 一般情况下&#xff0c;一个布局写好以后&#xff0c;使用 Activity#setContentView 调用该布局&#xff0c;这个 View tree 就创建好了。Activity#setContentView 其实是通过 LayoutInflate 来把布局文件转化为 View tree 的&#xff08;反射&#xff09;…

笔记本外接显示器的配置方法

目录 第一步 点击左下角&#xff0c;选择“设置” 第二步 选择系统&#xff0c;默认进入屏幕页面&#xff0c;页面往下拉&#xff0c;找到多显示器下拉框 前提&#xff1a;插好显示器的电源插头且插上笔记本HDMI线 第一步 点击左下角&#xff0c;选择“设置” 第二步 选择系…

STL第一讲

一、认识headers、版本、重要资源 1. C Standard Library和Standard Template Library 前者&#xff1a;c标准库&#xff1b;后者直译为“标准模板库” 区别: C标准库&#xff1a;是c编译器提供的自带的头文件(不带.h后缀)新版兼容C的头文件的形式cxxxx&#xff1b;旧版的xxx…

高清网络视频监控系统技术方案

目 录 一、概述 二、建设目标及需求 &#xff08;一&#xff09;建设总目标 &#xff08;二&#xff09;需求分析 三、设计依据与设计原则 &#xff08;一&#xff09;设计依据 &#xff08;二&#xff09;设计原则 四、建设方案设计 &#xff08;一&…

OpenKruiseGame × KubeSphere 联合发布游戏服运维控制台,推动云原生游戏落地

作者&#xff1a;云原生游戏社区 近日&#xff0c;云原生游戏开源社区旗下 OpenKruiseGame&#xff08;以下简称&#xff1a;OKG&#xff09;基于 KubeSphere 4.0 LuBan 架构开发的游戏服运维控制台 OKG Dashboard 正式发布&#xff01;现已上架 KubeSphere Marketplace 云原生…

MySQL 常用的数据类型【小林出品,必属精品】

数值类型 分为整型和浮点型&#xff1a; 扩展资料&#xff1a; 数值类型可以指定为无符号&#xff08;unsigned&#xff09;&#xff0c;表示不取负数。 1字节&#xff08;bytes&#xff09; 8bit。 对于整型类型的范围&#xff1a; 1. 有符号范围&#xff1a;-2^&#xff08;…

STL之unordered_map使用方法

这里写目录标题 STL之unordered_map使用方法1.什么是STL呢2.unordered_map2.1 头文件&#xff1a;2.2 怎么创建&#xff1a;2.3 初始化&#xff1a;2.4 根据key获取对应value值&#xff1a;2.5 遍历&#xff0c;判断key是否存在&#xff1a;2.6 怎么根据迭代器it获取key和value…

docker 安装docker-compose

首先需要把如下文件 安装到centos7中的/usr/local/bin 下 执行如下命令