计算最小三元组

#include <stdio.h>
#include <math.h>
int _min(int a[],int b[],int c[],int l,int m,int n,int *mina,int *minb,int *minc){
	int q,w,e,t;
	int min=999;
	for(int i=0;i<l;i++){
	for(int j=0;j<m;j++){
	for(int k=0;k<n;k++){
		q=abs(a[i]-b[j]);
		w=abs(b[j]-c[k]);
		e=abs(c[k]-a[i]);
		t=abs(abs(q-w)+abs(w-e)+abs(q-e));
		if(min>t){
		min=t;
		*mina=i;
		*minb=j;
		*minc=k;
		}
	}
	}
	}
	return min;
}
int main()
{
    int a[]={-1,0,9};
	int b[]={-25,-10,10,25};
	int c[]={2,9,17,30,41};
	int l,m,n,mina,minb,minc;
	l=3;
	m=4;
	n=5;
	int k=_min(a,b,c,l,m,n,&mina,&minb,&minc);
    printf("%d",k);
   return 0;
}

暴力求解。我在构思此程序的时候,实际脑子第一反应就是暴力求解,然而我那种浮躁的心灵,会不由得想要寻求更高效的解法,一边有思路,一边又不想承认,就会使得自己陷入一种矛盾的心理之中,脑海里不断浮现出暴力求解的方法,而又想要不断摆脱这种思维。

真正的方法应该是,先把暴力求解这种方法确定下来,具体下来,继续在此基础上继续深入讨论,人总是逐步向前的,想跳过跳不过的距离,要么跳过去,要么摔倒

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值