作者absent0918 (没什麽昵称)
看板b99902HW
标题[作业] 请强者帮忙
时间Fri Oct 8 16:12:58 2010
以下是我metal strength作业的程式码
#include<stdio.h>
main()
{
int row;
int column;
int judge;
int i,j,k;
int m,n;
int a;
int x[25],y[25];
int pattern[5][5];
double s[300][300];
scanf("%d%d",&row,&column); // 输入行列数
for ( i=0; i<row; i++ )
for ( j=0; j<column; j++ )
scanf("%lf",&s[i][j]); // 输入strength
scanf("%d",&k); // 输入pattern大小
for ( i=0; i<k; i++ )
for ( j=0; j<k; j++ )
scanf("%d",&pattern[i][j]); // 输入pattern
for ( i=0; i<k; i++ )
for ( j=0; j<k; j++ ){
x[pattern[i][j]]=i; // pattern的行
y[pattern[i][j]]=j; // pattern的列
}
for ( m=0; m<(row-k+1); m++ )
for ( n=0; n<(column-k+1); n++ ){
for ( a=0; a<k*k; a++ ){
if ( s[m+x[a]][n+y[a]] < s[m+x[a+1]][n+y[a+1]] )
judge=1; // 0跟1比、1跟2比...
else
judge=0;
break;
} // 定pattern左上角为(m,n)
if ( judge=1 ){
printf("%d\n",m+(k-1)/2);
printf("%d\n",n+(k-1)/2);
}
}
}
这个码怎麽弄都是两分
我一直找不出错在哪@@
请强者帮忙
谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.239.58
1F:→ didiwu:a要小於(k^2-1)喔~or你的判断会0~XD 10/08 16:35
2F:→ didiwu:你似乎就是微甲坐我後方的同学吧XD&我不是强者…科科 10/08 16:36
3F:→ didiwu:if(judge == 1)中你少打一个等号说~ 10/08 16:40
4F:推 didiwu:最後(?),k=1有点特别,你的检查机制有一定的机率出错喔~ 10/08 16:44
5F:→ absent0918:怎麽还是两分@@ 10/08 17:34
6F:→ didiwu:如果你搞定k=1了的话,那就剩你的else没括XDD 10/08 17:55
7F:→ absent0918:谢谢 我终於10分了 好感动= = 10/08 18:22
8F:推 arthur104:我想请问一下 是array的区块刚好符合k*k才会比吗? 10/10 17:26