首页 > 其他分享 >Codeforces Round 863 (Div. 3)———E

Codeforces Round 863 (Div. 3)———E

时间:2023-04-30 13:55:39浏览次数:49  
标签:012356789 863 cin Codeforces vec Div 组成 数中

题意:给定一个k,问由012356789组成的数字第k大的是多少

链接:Problem - E - Codeforces

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define endl "\n"

/*
    思路:k代表在2没有出现4的数字中,第k大的数
          十进制表示由“0123456789”这九个数组成的数中第x大的数
          例如13代表由“0123456789”组成的数中(不包括0)第13大的数
          那么这题k代表由"012356789"组成的数中第k大的数
          将k由十进制转换成特殊的九进制(012356789)就是对应的由012356789组成的第k大的数

          例子:求由01组成的第3大的数
                将3转换成二进制那么答案就是11(01 10 11)
*/

int main() {
    ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
    int T = 1;
    cin >> T;
    while (T--) {
        ll k;
        cin >> k;
        vector<int>vec;
        while (k) {
            vec.push_back(k % 9);
            k /= 9;
        }
        reverse(vec.begin(), vec.end());
        for (auto i : vec) {
            if (i < 4)cout << i;
            else cout << i + 1;
        }
        cout << endl;
    }
    return 0;
}

 

标签:012356789,863,cin,Codeforces,vec,Div,组成,数中
From: https://www.cnblogs.com/zhujio/p/17365204.html

相关文章

  • Codeforces Round 855 (Div. 3)--D
    题意:给定一个字符串,删除其中连续两个字符,问有多少种不同字符串的情况#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;#defineendl"\n"//开始时假设每个点都对答案有贡献,考虑什么时候没有贡献//假如字符串某处出现aba这种//删除ab或者ba最后都是......
  • 总结,从 766 开始(Div2 30)
    3.10A分块B 分数规划,以前没学过C推式子 3.11A推结论,先划分连续段,然后从一个长度>=k的连续段开始操作B推式子C平衡树套线段树(为了节省空间需要把内层线段树改成平衡树)或定期重构+树上差分+动态开点线段树,每个结点上有一棵线段树,每B次操作后向上合并 3.12......
  • CF R868 (div.2)
    A.A-characteristic题意:构造1|-1数列,使数组中两两相乘值为1的对数为k思路:显而易见与1|-1的出现顺序无关,总结规律易知当1数量为2时对数为一,3时对数为3(1+(3-1)),4时对数为6(3+(4-1)),-1同理,数据量较小,枚举个数即可1#include<bits/stdc++.h>23usingnamespacestd;4intans[1......
  • Codeforces 1804H - Code Lock(状压 dp)
    对于一种排列方案,答案显然等于相邻字符在环上对应的劣弧长度之和。然后其实你可能会想到很多状压/折半搜索方法,包括但不限于枚举一半的信息然后折半搜后一半,但稍加思考会发现这些方案都避不开记录元素之间的相对顺序,而但凡涉及到这一点,复杂度都是阶乘起步。因此我们只能另辟蹊......
  • Codeforces 1799H - Tree Cutting(树形 dp)
    思考的时候一直卡在不会在低于\(O(n)\)的时间内储存一个连通块的\(siz\)有关的信息,看了洛谷题解之后才发现我真是个小丑。树形DP。对于一条我们需要操作的边\((i,fa_i)\),我们将其分为保留子树和删除子树两种类型,对于删除子树,我们在判定其是否合法时候改为判定删除的连通块......
  • Codeforces 1815E - Bosco and Particle
    首先,对于每个\(s_i\),我们只用保留其最小周期,证明显然。同时以多个光电门为研究对象显然状态数过多,不方便统计。考虑一下连接不同光电门的纽带是什么:显然是相邻光电门之间的空隙。对于每个光电门\(i\),如果我们只保留\(i\)作为唯一的光电门,那么显然有\(0\to1\)和\(1\to2\)......
  • Educational Codeforces Round 1
    A.TrickySum公式求出1到n的和,然后枚举二等整次幂。#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongvoidsolve(){intn;cin>>n;intsum=(1+n)*n/2;for(inti=1;i<=n;i<<=1)sum-=i......
  • css div上层显示一个div
    CSS position属性来实现div上层显示div。首先,为需要在上层显示的div设置position:absolute,并设置其z-index值大于其他div。然后,为包含这些div的父元素设置position:relative。 <divclass="container"><divclass="overchild"></div></div>说明:container......
  • Educational Codeforces Round 145 (Rated for Div. 2)
    Preface补题A~D都能秒出,E没看出性质被薄纱了,F感觉是个丁真题随便讨论下就过了后面看了下F的标算是个倍增,感觉Tutorial对性质挖掘的还不够的说A.GarlandSB题,设出现次数最多的颜色个数为\(cm\),若\(cm\le2\)则答案为\(4\);若\(cm=3\)则答案为\(6\),若\(cm=4\)则无解importjav......
  • CodeForces-858#C 题解
    正文♦最坏时间复杂度:\(\mathcal{O}(\lvertS\rvert)\)本题十分简单,但请注意两个条件要同时满足。因为要求分割的次数越少越好,所以只要连续的辅音字母长度不大于2就不需要分割。由于辅音字母太多,只需要标记元音字母即可。#include<iostream>#include<string>#include<cst......