我有这种方式来完成任务:
for(int i =1;i<=n;i++){
for(int j=1;j<=n;j++){
if(i+j==k//it is my variable which i know){
out.print(i+" "+j);
}
}
但它会打印两次数字。我想打印一次。你能以最快的方式(即不是最简单的方法,但在操作方面)来处理这个问题吗?
答案 0 :(得分:0)
如果你知道k并知道i的范围,那么就解决方程式:
j = k-i
j_min = max(1,k-i_max)= max(1,k-n)
j_max = min(n,k-i_min)= min(n,k-1)
所以从j_min到j_max的单个for循环然后打印(k-j,j)。