zoukankan      html  css  js  c++  java
  • (2015年郑州轻工业学院ACM校赛题) G 矩阵

    看这道题的时候就感觉用一点动归思想+暴力 就能过了。

    #include<stdio.h>
    #include<iostream>
    #include<stack>
    #include<queue>
    #include<math.h>
    #include<stdlib.h>
    #include<cstring>
    using namespace std;
    #define Max(a,b) (a>b?a:b)
    #define Min(a,b) (a<b?a:b)
    #define INF 0xfffffff
    #define maxn 1100
     
    struct Point
    {
        int x, y, v;
    }P[maxn];
     
    int dp[maxn][maxn];
    int n, m, k;
     
    void Q()
    {
        int i, ans;
        Point A, B;
        cin >> A.x >> A.y >> B.x >> B.y;
     
        ans = dp[B.x][B.y] + dp[A.x-1][A.y-1] - dp[A.x-1][B.y] - dp[B.x][A.y-1];
     
        for(i=0; i<k; i++)
        {
            if(P[i].x >= A.x && P[i].x <= B.x && P[i].y >= A.y && P[i].y <= B.y)
            {
                ans = ans - P[i].x - P[i].y + P[i].v;
            }
        }
        printf("%d
    ", ans);
    }
     
    void M()
    {
        cin >> P[k].x >> P[k].y >> P[k].v;
     
        for(int i=0; i<k; i++)
        {
            if(P[i].x == P[k].x && P[i].y == P[k].y)
            {
                P[i].v = P[k].v;
                return ;
            }
        }
        k ++;
    }
     
    int main()
    {
     
        int T, i, j, t;
        char str[2];
     
        for(i=1; i<=1000; i++)
        {
            for(j=1; j<=1000; j++)
                dp[i][j] = i + j + dp[i-1][j] + dp[i][j-1] - dp[i-1][j-1];
        }
     
        cin >> T;
     
        while(T--)
        {
            scanf("%d%d%d",&n,&m,&t);
            k = 0;
            while(t--)
            {
                scanf("%s", str);
     
                if(str[0] == 'Q')
                    Q();
                else
                    M();
            }
        }
        return 0;
    }
     
  • 相关阅读:
    小短文1-判别法浅谈
    高等代数半期考试
    让CNN跑起来,以下是调参的所有秘密
    杂谈
    自适应中值滤波器
    用色调,饱和度,亮度表示颜色
    用类处理彩色图像
    操作像素
    机器学习前言
    直方图均衡化
  • 原文地址:https://www.cnblogs.com/chenchengxun/p/4443528.html
Copyright © 2011-2022 走看看