zoukankan      html  css  js  c++  java
  • EOJ Monthly 2019.11部分题解

    A题

    本题虽然是签到题,但是思路十分精巧,提醒我以后思考的时候可以多考虑进制转化的思路

    因为本题要求第x个单词,又注意到备选单词的长度是相同的,可以想到用k进制的转化来思考

    第x个即求x-1的k进制数,然后按照前后顺序来逐个遍历#号并替换,注意的是,不够要添0

    #include<iostream>
    #include<cstring>
    #include<string>
    #include<cmath>
    #include<algorithm>
    #include<map>
    #include<vector>
    #include<cstdio>
    #include <unordered_map>
    using namespace std;
    const int N=2000005;
    const int inf=0x3f3f3f3f;
    typedef long long ll;
    vector<int> num;
    vector<char> c;
    int main(){
        int n,m,k;
        ll x;
        string s;
        cin>>n>>m>>k>>x;
        char t;
        cin>>s;
        int i,j;
        x-=1;
        while(x){
            num.push_back(x%k);
            x/=k;
        }
        int mid=m-(int)num.size();
        for(i=0;i<mid;i++)
        num.push_back(0);
        m-=1;
        for(i=0;i<n;i++){
            if(s[i]=='#'){
                for(j=0;j<k;j++){
                    cin>>t;
                    c.push_back(t);
                }
                sort(c.begin(),c.end());
                cout<<c[num[m]]; 
                m--;
                c.clear();
            }
            else
            cout<<s[i];
        }
        cout<<endl;
    }
    View Code
  • 相关阅读:
    说说Java中的代理模式
    一个奇怪的异常
    JDBC第二次学习
    浅谈事务
    JDBC第一次学习
    Firebug & Chrome Console 控制台使用指南
    js 事件创建发布
    vue ui之 iview 事件拦截
    fetch获取json的正确姿势
    js对象通过属性路径获取属性值
  • 原文地址:https://www.cnblogs.com/ctyakwf/p/12189181.html
Copyright © 2011-2022 走看看