zoukankan      html  css  js  c++  java
  • 矩阵求和

     第一次做时理解错了题意,只算了中间对角线构成的十字形,题目真正的意思是由边abcd的中点依次连接组成的矩形所包含的所有点的值的和。

    可以将这个矩形看成被一个十字形分成了四个象限,然后分别求出四个象限的和,加在一起后十字形被加了两次,中间十字焦点被加了四次,则我们减掉一次十字形,两次焦点即为总面积。

     AC代码:

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 
     4 int a[110][110];
     5 
     6 int main(){
     7     int cnt=1;
     8     for(int i=1;i<=101;i++){
     9         for(int j=1;j<=101;j++){
    10             a[i][j]=cnt++;
    11         }
    12     }
    13     /*for(int i=1;i<=101;i++){
    14         for(int j=1;j<=101;j++){
    15             cout<<a[i][j]<<" ";
    16         }cout<<endl;
    17     }*/
    18     cnt=0;
    19     int sum=0;
    20     for(int i=1;i<=101;i++){
    21         sum+=a[i][51];
    22         sum+=a[51][i];
    23     }
    24     for(int i=1;i<=51;i++){
    25         for(int j=51;j>51-i;j--){
    26             cnt+=a[i][j];
    27         }
    28     }
    29     for(int i=1;i<=51;i++){
    30         for(int j=51;j<51+i;j++){
    31             cnt+=a[i][j]; 
    32         }
    33     }
    34     for(int i=51;i<=101;i++){
    35         for(int j=51;j>i-51;j--){
    36             cnt+=a[i][j];
    37         }    
    38     }
    39     for(int i=51;i<=101;i++){
    40         for(int j=51;j<=152-i;j++){
    41             cnt+=a[i][j];
    42         }
    43     }
    44     cnt-=sum;
    45     cnt-=a[51][51];
    46     cout<<cnt<<endl;
    47     return 0;
    48 }
  • 相关阅读:
    Pandas索引和选择数据
    Pandas选项和自定义
    Pandas字符串和文本数据
    Pandas排序
    Pandas迭代
    Pandas重建索引
    Pandas函数应用
    Pandas描述性统计
    Pandas基本功能
    nyoj 234 吃土豆
  • 原文地址:https://www.cnblogs.com/Kiven5197/p/8678280.html
Copyright © 2011-2022 走看看