hdu4500

本文介绍了一种使用C语言实现的矩阵处理算法,通过计算矩阵元素间的特定关系,找出矩阵中具有最大影响力的元素位置及其影响力大小。算法首先读取矩阵的尺寸和元素,然后计算每个元素对其周围元素的影响,最后确定最具影响力的元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

签到题。。。。话说开始的时候while的括号没打回来  看了好半天啊啊 坑爹啊啊啊啊

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

int main()
{
    int N, M, i, j, a[23][23], b[23][23], t, k;
    int _evalue( int x, int y );

    while( scanf( "%d%d", &N, &M ) )
    {
        if( N == 0 || M == 0 )
            break;

        memset( a, 0, 23 * 23 * sizeof(int) );
        memset( b, 0, 23 * 23 * sizeof(int) );

        for( i = 1; i <= N; i ++ )
        {
            for( j = 1; j <= M; j ++ )
            {
                scanf( "%d", &a[i][j] );
            }
        }

        for( i = 1; i <= N; i ++ )
        {
            for( j = 1; j <= M; j ++ )
            {
                b[i][j] += _evalue( a[i][j], a[i-1][j] );
                b[i][j] += _evalue( a[i][j], a[i+1][j] );
                b[i][j] += _evalue( a[i][j], a[i][j-1] );
                b[i][j] += _evalue( a[i][j], a[i][j+1] );
            }
        }
        t = k = 0;
        for( i = 1; i <= N; i ++ )
        {
            for( j = 1; j <= M; j ++ )
            {
                if( b[i][j] > b[t][k] )
                {
                    t = i;
                    k = j;
                }
            }
        }

        printf( "%d %d %d\n", t, k, b[t][k] );
    }


    return 0;
}

int _evalue( int x, int y )
{
    if( x * y > 0 )
    {
        return -fabs( y );
    }
    else if( x * y < 0 )
    {
        return fabs( y );
    }
    else
    {
        return 0;
    }
}

  

转载于:https://www.cnblogs.com/hacker-hzh/archive/2013/03/21/2972440.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值