zoukankan      html  css  js  c++  java
  • Leetcode-5207 Get Equal Substrings Within Budget(尽可能使字符串相等)

     1 typedef long long ll;
     2 #define _for(i,a,b) for(int i = (a);i < b;i ++)
     3 #define _rep(i,a,b) for(int i = (a);i > b;i --)
     4 #define INF 0x3f3f3f3f
     5 #define pb push_back
     6 #define maxn 10000
     7 
     8 class Solution
     9 {
    10     public:
    11         vector<int> d;
    12         int equalSubstring(string s, string t, int maxCost)
    13         {
    14             int ans = 0;
    15             _for(i,0,s.size())
    16             {
    17                 if(s[i]>t[i])
    18                     d.pb(s[i]-t[i]);
    19                 else
    20                     d.pb(t[i]-s[i]);
    21             }
    22             int st = 0,ed = 0;
    23             int sum = 0;
    24             while(ed < d.size() && st<=ed)
    25             {
    26                 sum += d[ed];
    27                 if(sum <= maxCost)
    28                 {
    29                     ans = max(ans,ed-st+1);
    30                     ed ++;
    31                 }
    32                 else
    33                 {
    34                     sum -= d[st];
    35                     st ++;
    36                     ed ++;
    37                 }
    38             }
    39             return ans;
    40         }
    41 };
  • 相关阅读:
    区间树
    最大流
    单源最短路径
    散列表
    最小生成树
    软件体系结构2
    软件体系结构
    Leetcode 687.最长同值路径
    Leetcode 686.重复叠加字符串匹配
    Python测试框架
  • 原文地址:https://www.cnblogs.com/Asurudo/p/11607871.html
Copyright © 2011-2022 走看看