Educational Codeforces Round 109 (Rated for Div. 2)(A-B)

简介: 算法

链接


A. Potion-making


题意:大概就是啤酒兑水的问题,要求你对完之后酒精的浓度可以达到k,然后众所周知加一升的水,浓度就会降,加一升酒精就会升(你不是废话吗? ),求最少要加多少升酒精和水。


思路:其实细想一下如果要25的浓度其实就是25/100=1/4,

而要10的浓度是10/100,约分一下就是1/10。

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,i,j,t;
    cin>>t;
    while(t--){
            cin>>n;
            int d1=__gcd(100,n);
            cout<<max(n/d1,100/d1)<<endl;
    }
    return 0;
}


B. Permutation Sort


题意:一堆打乱的序列,问你需要进行多少次洗牌式处理能还原正常序列,不能对整个序列进行洗牌操作。

思路:三种情况

①已经排好----ans=0 example:1 2 3 4 5

②首或者尾排好----ans=1 example:1 3 2 4 5、1 5 2 3 4

③首尾都没排好有两种情况:

①:恰好首在尾,尾在首:5 2 3 4 1----ans=3

②:其他情况: 2 3 4 1 5 ----ans=2

#include<bits/stdc++.h>
using namespace std;
const int maxn=55;
int a[maxn];
int main()
{
    int n,i,j,t;
    cin>>t;
    while(t--){
        cin>>n;
        int f1=0;
        for(i=0;i<n;i++){
            cin>>a[i];
            if(a[i]!=i+1) f1=1;
        }
        if(f1==0){
             cout<<0<<endl;
        }
        else {
            int d1,d2;
            for(i=0;i<n;i++){
                if(a[i]!=i+1){
                    d1=i;break;
                }
            }
            for(i=n-1;i>=0;i--){
                if(a[i]!=i+1){
                    d2=i;break;
                }
            }
            if(d1!=0||d2!=n-1){
                cout<<1<<endl;
            }
            else if(a[d1]==n&&a[d2]==1){
                cout<<3<<endl;
            }
            else {
                cout<<2<<endl;
            }
        }
    }
}


相关文章
|
JavaScript Java 测试技术
基于SpringBoot+Vue的人力资源管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue的人力资源管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
242 8
|
7月前
|
JavaScript API 数据安全/隐私保护
淘宝店铺订单相关API接口详解
本文详细介绍了淘宝店铺订单相关的三个关键API接口:订单列表、订单详情和订单物流。通过这些接口,开发者可以获取订单信息、买家详情、商品清单、支付信息及物流轨迹,支持多种筛选条件和复杂参数传递。此外,文章还强调了接口权限申请、数据安全处理及调用频率限制等注意事项,帮助开发者高效集成这些接口,提升电商系统的功能和用户体验。供稿者:Taobaoapi2014。 (239字符)
|
机器学习/深度学习 数据采集 算法
数据稀缺条件下的时间序列微分:符号回归(Symbolic Regression)方法介绍与Python示例
有多种方法可以处理时间序列数据中的噪声。本文将介绍一种在我们的研究项目中表现良好的方法,特别适用于时间序列概况中数据点较少的情况。
303 1
数据稀缺条件下的时间序列微分:符号回归(Symbolic Regression)方法介绍与Python示例
|
安全
C 空指针的使用注意点
在 C 语言中,空指针(NULL pointer)是指不指向任何有效地址的指针。使用时需注意以下几点:1. 初始化指针,如 `int *ptr = NULL;` 2. 解引用前检查有效性,如 `if (ptr != NULL)` 3. 函数参数中处理空指针 4. 用作标识值 5. 检查动态内存分配结果 6. 释放内存后设为 `NULL` 7. 多级指针需逐层检查 8. 谨慎赋值空指针。空指针是强大的工具,但需谨慎使用以确保程序安全稳定。
293 12
|
负载均衡 应用服务中间件 Linux
"揭晓nginx的神秘力量:如何实现反向代理与负载均衡,拯救服务器于水火?"
【8月更文挑战第20天】在Linux环境下,nginx作为高性能HTTP服务器与反向代理工具,在网站优化及服务器负载均衡中扮演重要角色。本文通过电商平台案例,解析nginx如何解决服务器压力大、访问慢的问题。首先介绍反向代理原理,即客户端请求经由代理服务器转发至内部服务器,隐藏真实服务器地址;并给出配置示例。接着讲解负载均衡原理,通过将请求分发到多个服务器来分散负载,同样附有配置实例。实践表明,采用nginx后,不仅服务器压力得到缓解,还提升了访问速度与系统稳定性。
379 3
|
存储
惊世骇俗!开源 PolarDB-X 部署安装大冒险,全程心跳与惊喜不断!
【8月更文挑战第8天】作为技术爱好者的我近期完成了开源PolarDB-X的部署安装,过程虽具挑战,但终获成功。现分享全过程:先确保服务器配置达标(内存、存储及网络)。接着下载官方最新稳定版,解压至指定目录。配置参数需细心调整以适配需求,如设置端口及数据路径。最后启动服务并留意可能的问题,如下载中断或配置错误等,可通过日志排查解决。部署完成后,见到服务正常运行时的喜悦难以言表。尽管PolarDB-X部署稍显复杂,但按部就班即可达成。期待与大家共同探讨学习!
419 1
|
存储 Kubernetes 调度
在K8S中,是怎么实现数据持久化的?
在K8S中,是怎么实现数据持久化的?
|
人工智能 自然语言处理 安全
ChatGPT高效搞定Excel数据分析
ChatGPT高效搞定Excel数据分析
308 0
|
存储 编解码 缓存
[笔记]音视频学习之视音频数据处理入门《三》H264
[笔记]音视频学习之视音频数据处理入门《三》H264
391 0
|
文字识别 监控 安全
《钉钉连接平台速成手册》全新发布!
钉钉连接平台,通过简单的低代码配置,帮助企业迅捷实现系统集成和连接。原本应用之间的连接需要技术人员去开发才能实现,通过连接平台,非专业技术同学也能够通过简单的低代码或者零代码的方式就实现应用互联互通,帮助企业降低集成实施的周期和成本。
1119 1
《钉钉连接平台速成手册》全新发布!