zoukankan      html  css  js  c++  java
  • 算法问题实战策略 QUADTREE

    地址 https://algospot.com/judge/problem/read/QUADTREE

    将压缩字符串还原后翻转再次压缩的朴素做法 在数据量庞大的情况下是不可取的

    所以需要在压缩的情况下进行翻转

    图片可以分成四块 每块在颜色不统一的情况下又会分成四块 那么翻转也可以采取这种逐步将问题分解成小块翻转 然后再处理大块算法 最后的到结果的算法

    代码如下

    #include <iostream>
    #include <string>
    
    using namespace std;
    
    /*
    4
    w
    xbwwb
    xbwxwbbwb
    xxwwwbxwxwbbbwwxxxwwbbbwwwwbb
    =======================================
    w
    xwbbw
    xxbwwbbbw
    xxwbxwwxbbwwbwbxwbwwxwwwxbbwb
    */
    
    int n;
    
    string reverse(string::iterator& it)
    {
        char head = *it;
        ++it;
        if (head == 'b' || head == 'w')
            return string(1, head);
        string upperLeft = reverse(it);
        string upperRight = reverse(it);
        string lowerLeft = reverse(it);
        string lowerRight = reverse(it);
    
        return string(1,'x') + lowerLeft + lowerRight + upperLeft + upperRight;
    }
    
    int main()
    {
        cin >> n;
        while (n--) {
            string s;
            cin >> s;
            string::iterator it = s.begin();
            cout << reverse(it) << endl;
        }
    
        return 0;
    }
    作 者: itdef
    欢迎转帖 请保持文本完整并注明出处
    技术博客 http://www.cnblogs.com/itdef/
    B站算法视频题解
    https://space.bilibili.com/18508846
    qq 151435887
    gitee https://gitee.com/def/
    欢迎c c++ 算法爱好者 windows驱动爱好者 服务器程序员沟通交流
    如果觉得不错,欢迎点赞,你的鼓励就是我的动力
    阿里打赏 微信打赏
  • 相关阅读:
    leetcode算法题基础(五)双指针(一)27 题 移除元素
    kata-shim: Setctty set but Ctty not valid in child: unknown.
    kata-runtime mount
    UVa1636 Headshot
    HDU1150 Machine Schedule
    POJ 1273 Drainage Ditches
    SPOJ GSS1 Can you answer these queries I
    POJ 1840 Eqs
    POJ2001 Shortest Prefixes
    HDU 2795 Billboard
  • 原文地址:https://www.cnblogs.com/itdef/p/11745814.html
Copyright © 2011-2022 走看看