LeetCode Weekly Contest 211 2問目 - Lexicographically Smallest String After Applying Operations [1625]

Source

LeetCode Weekly Contest 211
問題文

問題概要

省略

解法

省略

cLayversion 20201018-2)のコード

C++に変換後のコードはこちら

#define main dummy_main
{}
#undef main

class Solution {
public:
  string findLexSmallestString(string s, int a, int b) {
    int n = s.size();
    string res = s, tmp, t;

    b = gcd(b, n);
    REP(n/b){
      tmp = t = s;
      rep(10){
        rep(i,1,n,2) t[i] = (t[i]-'0'+a) % 10 + '0';
        tmp <?= t;
      }
      if(b%2){
        t = tmp;
        rep(10){
          rep(i,0,n,2) t[i] = (t[i]-'0'+a) % 10 + '0';
          tmp <?= t;
        }
      }
      res <?= tmp;
      s = s.substr(b) + s.substr(0,b);
    }

    return res;
  }
};

Current time: 2024年04月27日04時22分49秒
Last modified: 2020年10月18日15時03分09秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る

Logged in as: unknown user (not login)

ログイン: