搜索
查看: 297|回复: 2
打印 上一主题 下一主题

有没有高手,帮我简化下代码啦

[复制链接]
跳转到指定楼层
楼主
发表于 2017-10-20 21:55:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<iostream>
using namespace std;
int main()
{
    char a[50001][16];
    char b[50001][16];
    int same[10001]={0,0};
    int A,B,Q;
    int a1[10001],a2[10001],b1[10001],b2[10001];
    char x[10001];
    cin>>A>>B>>Q;
    for(int i=1;i<=A;i++)
    {
        for(int j=1;j<=B;j++)
            cin>>a[j];
    }
    for(int i=1;i<=A;i++)
        for(int j=1;j<=B;j++)
        {
            b[j]='0';
            if(a[j]=='0')same[1]++;
        }
    for (int i=1;i<=Q;i++)
    {
        cin>>a1>>a2>>b1>>b2;
        cin>>x;
    }
    for (int i=1;i<=Q;i++)
    {
        for(int j=a1;j<=a2;j++)
        {
            for(int k=b1;k<=b2;k++)
            {
                if(b[j][k]!=x)
                {
                    b[j][k]=x;
                    if(b[j][k]==a[j][k])
                        same++;
                    else
                        same--;
                }
            }
        }
        same[i+1]=same;
    }
    for(int i=1;i<=Q;i++)
        cout<<same<<endl;
}




/**********************************************************/

本人初一新手,谁能帮我简化下算法时间(空间不要紧,距离题目要求上限少挺多)

/**********************************************************/







时间限制: 2 Sec  内存限制: 128 MB
题目描述
[color=rgba(0, 0, 0, 0.870588)]
HRH有一天想在一张大的白纸上画画,他借了一台机器,这台机器需要输入五个参数才可以运行:a1,a2,b1,b2,x(1<=a1<=a2<=50000,1<=b1<=b2<=15,0<=x<=1),a1行到a2行,b1列到b2列,颜色变成x。而HRH心中有一幅理想图片的构成,想在请你算算每经过一次机器操作后,有多少个格子和他心中的图片格子颜色相同。

输入第一行 A B Q(A行B列Q个操作,Q<=10000)
之后A行目标画,每行B个数字连续输出
再之后Q个操作
输出每个操作数后的匹配数


输入
输出
样例输入17 15 101111111011111111111110001111111111100000111111111000000011111110000000001111111000000011111110000000001111100000000000111110000000001111100000000000111000000000000011100000000000111000000000000010000000000000001111110001111111111110001111111111110001111115 8 2 14 18 17 3 7 14 5 10 15 07 16 12 14 12 17 13 14 02 6 2 3 113 14 4 8 13 6 6 7 11 16 10 11 07 16 10 10 0样例输出113949591879391879393
沙发
 楼主| 发表于 2017-10-20 21:58:32 | 只看该作者
重发一下样例输入输出
板凳
 楼主| 发表于 2017-10-20 22:58:54 | 只看该作者
样例输入:
17 15 10
111111101111111
111111000111111
111110000011111
111100000001111
111000000000111
111100000001111
111000000000111
110000000000011
111000000000111
110000000000011
100000000000001
110000000000011
100000000000001
000000000000000
111111000111111
111111000111111
111111000111111
5 8 2 14 1
8 17 3 7 1
4 5 10 15 0
7 16 12 14 1
2 17 13 14 0
2 6 2 3 1
13 14 4 8 1
3 6 6 7 1
1 16 10 11 0
7 16 10 10 0
样例输出:
113
94
95
91
87
93
91
87
93
93
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表