• AtCoder Beginner Contest 174


    A - Air Conditioner

      签到题,判断与30的关系(略)。

    B - Distance

      签到题,判断$n$个点到原点的距离和$d$的大小关系(略)。

    D - Alter Altar

    题意:

      给你一个只含有$W$和$R$的串,每次可以交换任意两个$W$和$R$的位置或者把$W$变成$R$,问最少多少次可以使得所有的$R$左侧没有$W$。

    分析:

      当时想复zha了,首先最终的情况肯定是左边全是$R$,右边全是$W$。先看总共有有多少个$R$,计为$num_1$,这样就可以保证前$num_1$个全为$R$,然后在此之后的所有的$R$都必须与前面的$W$交换或者换成$W$,所以有多少个就是答案。(赛后过题真的烦)

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    const ll maxn=2e5+1000;
    ll t,q,n;
    int main(){
        //freopen("in.txt","r",stdin);
        ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
        cin>>n;
        string a;
        cin>>a;
        ll num1=0,num2=0;
        for(int i=0;i<n;i++){
            if(a[i]=='R') num1++;
        }
        for(int i=num1;i<n;i++){
            if(a[i]=='R') num2++;
        }cout<<num2<<endl;
        return 0;
    }
    

    E - Logs

    题意:

      给出$n$个木棍,问执行$k$次切割以后最长的长度的最小值是多少。

    分析:

      我一眼看出你是二分,大威天龙。二分答案,然后每次判断切出来的个数就完了。

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    const ll maxn=2e5+1000;
    ll t,k,n,a[maxn];
    bool yes(ll mid){
        ll cnt=0;
        for(int i=0;i<n;i++){
            if(a[i]>=mid){
                cnt+=ceil(1.0*a[i]/mid)-1;
            }
        }
        if(cnt<=k) return 0;
        else return 1;
    }
    int main(){
        //freopen("in.txt","r",stdin);
        ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
        cin>>n>>k;
        ll maxi=-1;
        for(int i=0;i<n;i++){
            cin>>a[i];
            maxi=max(maxi,a[i]);
        }
        ll r=1e9+10,l=1;
        while(l<=r){
            ll mid=(r+l)>>1;
            if(yes(mid)){
                l=mid+1;
            }else r=mid-1;
        }cout<<l<<endl;
        return 0;
    }

  • 相关阅读:
    模式识别 之 BP算法
    仪器开发 之 DICOM 三维重建 HPP
    模式识别 之 BP算法 (二)
    病理分析 之 细胞分析
    脉搏血氧仪 之 算法原理
    模式识别 之 初学
    机器学习 之 模糊神经(失败总结)
    冲刺第二天
    冲刺第三天
    团队项目计划
  • 原文地址:https://www.cnblogs.com/Zabreture/p/13423526.html
Copyright © 2020-2023  润新知