• 爬格子呀5-5


    今天算是比较渣了,一晚上只写了一道题,不过还是学到了蛮多东西的;
    中途请教了一位学长,虽然有一点的坏,但是的确告诉了我一条挺好的解决方法;
    现在是这样,要多去尝试一下新的方法,当自己真正用熟了,就可以为所欲为了;
    现在是晚上0:40,希望自己的努力不会辜负自己的期望,晚安世界;

    代码如下:(栈溢出版本/啰里啰唆版本)

    #include<cstdio>
    #include<iostream>
    #include<string>
    #include<sstream>
    #include<vector>
    const int N = 120000;
    int n;
    using namespace std;
    
    int main() {
        vector<string>word[N];
        string s, ss;
        cin >> n;
        int t = 0;
        while (t++ < n) {
            scanf_s("%s", &word[t]);
        }
        vector<string>::iterator it = word->begin(), itt, target;
        for (; it != word->end(); it++) {
            for (itt = it; itt != word->end(); itt++) {
                s = *it + *itt;
                target = find(word->begin(), word->end(), s);
                if (target != word->end()){
                    cout << *target;
                }
            }
        }
        return 0;
    }

    新版代码如下,进行了总体的优化,算法复杂度,代码简洁度均得到了一定程度的提升;

    代码如下:

    #include<stdio.h>
    #include<iostream>
    #include<string>
    #include<sstream>
    #include<vector>
    #include<set>
    const int N = 120000;
    int n;
    using namespace std;
    
    int main() {
        set<string> word;
        string s;
        cin >> n;
        int t = 0;
        while (t++ < n) {
            cin >> s;
            word.insert(s);
        }
        set<string>::iterator itt;
        for (set<string>::iterator i = word.begin(); i != word.end(); i++) {
            itt = (++i)--;
            s = *itt + *i;
            if (word.count(s)) {
                cout << s<<endl;
            }
        }
        return 0;
    }
  • 相关阅读:
    61. Rotate List
    60. Permutation Sequence
    59. Spiral Matrix II ***
    58. Length of Last Word
    57. Insert Interval
    328. Odd Even Linked List
    237. Delete Node in a Linked List
    关于找List的中间Node
    234. Palindrome Linked List
    203. Remove Linked List Elements *
  • 原文地址:https://www.cnblogs.com/romaLzhih/p/9489861.html
Copyright © 2020-2023  润新知