LeetCode Biweekly Contest 21 2問目 - Find the Longest Substring Containing Vowels in Even Counts [1371]

Source

LeetCode Biweekly Contest 21
問題文

問題概要

省略

解法

省略

cLayversion 20200308-1)のコード

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

#define main dummy_main
{}
#undef main

int arr[5d5+2];
int mn[100], mx[100];

class Solution {
public:
  int findTheLongestSubstring(string s) {
    int N = s.size();
    int res = 0;

    arr[0] = 0;
    rep(i,N){
      arr[i+1] = arr[i];
      if(s[i]=='a') arr[i+1] ^= (1<<0);
      if(s[i]=='i') arr[i+1] ^= (1<<1);
      if(s[i]=='u') arr[i+1] ^= (1<<2);
      if(s[i]=='e') arr[i+1] ^= (1<<3);
      if(s[i]=='o') arr[i+1] ^= (1<<4);
    }

    rep(i,1<<5) mn[i] = int_inf, mx[i] = -1;
    rep(i,N+1){
      mn[arr[i]] <?= i;
      mx[arr[i]] >?= i;
    }
    rep(i,1<<5) res >?= mx[i]-mn[i];
    return res;
  }
};

Current time: 2024年04月24日17時19分01秒
Last modified: 2020年03月08日10時17分05秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る

Logged in as: unknown user (not login)

ログイン: