zoukankan      html  css  js  c++  java
  • HDU 6898 3x3 Convolution && CCPC 2020网络赛1011题

     

    这道题真的是气死我了,比赛的最后差一点,赛后A题,

    解题思路: 这个按着题意推矩阵,矩阵的数据都是int型的,输入的是K' 的矩阵,推出K 矩阵,把K矩阵和A矩阵代入上面给出的公式,推C矩阵

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    int main()
    {
        int a ;
        ios::sync_with_stdio(false);
        cin.tie(0);cout.tie(0);
        cin>>a;
        while(a--){
            int pos;
            cin>>pos;
            int k_[4][4];
            int k[4][4];
            int n[55][55];
            int C[55][55] = {0};
            int sum = 0;
            for(int i = 1 ; i <= pos; i++)
                for(int j = 1;  j <= pos ; j++)
                    cin>>n[i][j];
            for(int i = 1 ; i <= 3; i++)
                for(int j = 1;  j <= 3 ; j++){
                    cin>>k_[i][j];
                    sum+=k_[i][j];
                }
            for(int i = 1 ; i <= 3; i++)
                for(int j = 1;  j <= 3 ; j++){
                    k[i][j] = k_[i][j] / (sum*1.0);
                }
            for(int x = 1; x <= pos ; x++){
                for(int y = 1; y <= pos ; y++){
                    for(int i = 1; i <= min(pos-x+1,3);i++){
                        for(int j = 1; j <= min(pos-y+1,3) ;j++){
                            C[x][y] += (n[x+i-1][y+j-1] * k[i][j]);//题目公式 
                        }
                    }
                }
            }
            for(int i =1 ; i <= pos ; i++){
                for(int j = 1 ; j <= pos ; j++){
                    if(j==1)
                        cout<<(int)C[i][j];
                    else
                        cout<<" "<<(int)C[i][j];
                }
                cout<<endl;
            }
        }
        return 0;
    } 
  • 相关阅读:
    手机体验细节小动画
    第一次用AngularJS
    鼠标离开方向检测
    回忆之placeholder
    回忆之日历
    大数据学习
    shell 二
    十三:变量、函数、存储过程、循环控制结构
    十二:事务与视图
    十一:约束
  • 原文地址:https://www.cnblogs.com/Li-ningning/p/13701083.html
Copyright © 2011-2022 走看看