zoukankan      html  css  js  c++  java
  • Codeforces Round #392 (Div. 2)

      突然觉得CF的题很锻炼代码能力和反应速度。。更加坚定了我在寒假要多打CF的决心。

      AB都是大水题,直接跳过了。

      C题,很简单的题目,不过感觉细节必须考虑清楚。WA了很多发才过,而且最终代码还很挫。。还特判了n是1和2的情况= =。。代码太挫了就不贴了。

      D题,也是比较简单的贪心,不过感觉直接写for的话可能比较烦= =,借鉴了别人递归的写法,还是挺不错的。代码如下:

     1 #include <stdio.h>
     2 #include <algorithm>
     3 #include <string.h>
     4 #include <iostream>
     5 using namespace std;
     6 typedef long long ll;
     7 
     8 ll base;
     9 char s[100];
    10 ll solve(int r)
    11 {
    12     if(r == 0) return 0;
    13     int l = r;
    14     ll val = 0;
    15     ll t = 1;
    16     for(int i=r;i>=1&&t<base;i--,t*=10)
    17     {
    18         if(val+t*(s[i]-'0') < base)
    19         {
    20             if(s[i] != '0') l = i;
    21             val = val + t*(s[i]-'0');
    22         }
    23         else break;
    24     }
    25     return solve(l-1) * base + val;
    26 }
    27 
    28 int main()
    29 {
    30     cin >> base;
    31     scanf("%s",s+1);
    32     cout << solve(strlen(s+1)) << endl;
    33     return 0;
    34 }
    D

      还是要提高代码能力啊!

  • 相关阅读:
    显而易见的python
    GitHub 使用教程图文详解
    linux下搭建hexo环境
    linux 删除软链接
    Django2.1入门教程
    windows下安装PyQt4
    python3 Flask安装
    学习之源
    白话C++系列教程
    面试笔试试题精选
  • 原文地址:https://www.cnblogs.com/zzyDS/p/6345153.html
Copyright © 2011-2022 走看看