一场秋雨一场凉

北京下雨了,不大,安静。
从7月底就开始准备的秋招,或许到今天,结束了。
我没有多么努力,但也不承认自己是渣渣。
秋天的果实不是心目中最大最红的那个,却也甘甜可口。
我还有所等待,只怕事情总不会尽如人意。
我也有比较的心,也想把别人比下去。
最后发现,没有必要——
你能比下去的人,不会超过你。
你超不过的人,自然会把你比下去。
而且,真正让内心焦灼的,是身边的朋友。
毕竟,我不会很多在乎外校同专业的人是否比我“强”。
身边的,看见的,才最有可能是痒的。
提前15分钟交了商汤的第三轮笔试题目,我答的不好。
此刻,我心如这夜,这雨。
抬头向上,我还看到了天空的一轮月光。
最后附上第二题高斯滤波的代码(78%)。

#include <iostream>
#include <algorithm>
#include <queue>
#include <string>
#include <map>
#include <set>
#include <stack>
#include <vector>
#include <unordered_map>
#include <functional>
#include <numeric>
using namespace std;

using LL = long long;
using uchar = unsigned char;
using vv = vector < vector<double> >;

ostream &operator << (ostream &out, vv &v) {
    int n(v.size());
    int m(v[0].size());
    for (int i = 0; i < n; i++){
        out << int(v[i][0]);
        for (int j = 1; j < m; j++){
            out << ' ' << int(v[i][j]);
        }
        if (i != n - 1) out << endl;
    }
    return out;
}

int main(){
    int N, M;
    cin >> N >> M;
    vv input(N, vector<double>(M, 0));
    for (int i = 0; i < N; i++){
        for (int j = 0; j < M; j++){
            cin >> input[i][j];
        }
    }
    int H, W;
    cin >> H >> W;
    vv kernel(H, vector<double>(W, 0));
    for (int i = 0; i < H; i++){
        for (int j = 0; j < W; j++){
            cin >> kernel[i][j];
        }
    }

    // padding
    int h(H / 2), w(W / 2);
    int n(N + 2 * h), m(M + 2 * w);
    vv p_input(n, vector<double>(m, 0));
    for (int i = 0; i < N; i++){
        for (int j = 0; j < M; j++){
            p_input[h + i][w + j] = input[i][j];
        }
    }
    for (int i = 0; i < N; i++){
        int l(w - 1), r(w + 1);
        while (l >= 0){
            p_input[i + w][l] = p_input[i + w][r];
            l--;
            r++;
        }
        l = w + M - 2; r = w + M;
        while (r < m){
            p_input[i + w][r] = p_input[i + w][l];
            r++;
            l--;
        }
    }
    for (int j = 0; j < m; j++){
        int u(h - 1), d(h + 1);
        while (u >= 0){
            p_input[u][j] = p_input[d][j];
            u--;
            d++;
        }
        u = h + N - 2; d = h + N;
        while (d < n){
            p_input[d][j] = p_input[u][j];
            d++;
            u--;
        }
    }
    // cout << p_input << endl;
    // conv filter
    vv res(N, vector<double>(M, 0));
    for (int i = 0; i < N; i++){
        for (int j = 0; j < M; j++){
            double tmp(0.);
            for (int p = 0; p < H; p++){
                for (int q = 0; q < W; q++){
                    tmp += kernel[p][q] * p_input[i + p][j + q];
                }
            }
            res[i][j] = tmp;
        }
    }
    cout << res << endl;
}

EXIT。

全部评论
左手程序右手诗啊!
点赞 回复 分享
发布于 2018-10-15 21:18
当时都没读懂题意,主要是看题太长,走马观花看了一遍,跳第三题了,结果,第三题也没写完
点赞 回复 分享
发布于 2018-10-17 22:45
点赞 回复 分享
发布于 2018-10-18 09:29
老哥去哪了呀
点赞 回复 分享
发布于 2018-10-18 14:28

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务