Đi bộ ngẫu nhiên trên các cạnh của một khối


35

Một con kiến ​​được đặt trong một góc của khối lập phương và không thể di chuyển. Một con nhện bắt đầu từ góc đối diện và có thể di chuyển dọc theo các cạnh của khối lập phương theo bất kỳ hướng nào với xác suất . Trung bình, con nhện sẽ cần bao nhiêu bước để đến kiến?1 / 3(x,y,z)1/3

(Đây không phải là bài tập về nhà, nó là một câu hỏi phỏng vấn.)


7
Bài tập về nhà? Bạn đã thử những gì cho đến nay?
Adrian

Về chuỗi Markov, đây là một giới thiệu tuyệt vời setosa.io/blog/2014/07/26/markov-chains
DL Dahly

1
Thông thường loại sổ sách thông thường này nên được đánh dấu bằng self-studythẻ và làm theo hướng dẫn tại wiki thẻ của nó . Vui lòng chỉnh sửa câu hỏi này và đưa nó vào các câu hỏi tương tự trong tương lai
Glen_b -Reinstate Monica

4
@GarethMcCaughan - Không, đó là một câu hỏi phỏng vấn.
Elizabeth Susan Joseph

Theo dõi @alesc tôi đã tạo một JavaScript Plunker. plnkr.co/edit/jYQVDI
abbaf33f 27/2/2015

Câu trả lời:


32

Tôi đề nghị mô hình hóa vấn đề dưới dạng chuỗi Markov trong đó mỗi trạng thái biểu thị khoảng cách giữa nhện và kiến. Trong trường hợp này, chúng ta có 4 trạng thái có thể Si là khoảng cách i có thể là {0,1,2,3} .

Khi con nhện ở góc đối diện của khối lập phương, nó ở khoảng cách 3 bước so với con kiến. Nó ở trạng thái S3 .

Xây dựng ma trận chuyển P .

  • Nếu chúng ta vẽ một khối lập phương, chúng ta thấy rằng khi chúng ta ở trạng thái , mọi chuyển động sẽ giảm khoảng cách giữa con nhện và con kiến ​​xuống còn 2 bước. Vì vậy, khi chúng ta ở trạng thái S 3, chúng ta chuyển sang trạng thái S 2 với xác suất 1.S3S3S2

  • Khi chúng ta ở trạng thái , chúng ta có thể quay lại trạng thái S 3 bằng cách sử dụng cạnh chúng ta đến từ đó hoặc chúng ta có thể giảm khoảng cách xuống chỉ một bước nếu chúng ta chọn hai cạnh khác. Vì vậy, khi chúng ta ở trạng thái S 2, chúng ta có thể chuyển sang trạng thái S 1 với xác suất 2/3 và đến trạng thái S 3 với xác suất 1/3.S2S3S2S1S3

  • Khi chúng ta ở trạng thái , chúng ta có thể chuyển sang trạng thái S 0 bằng một trong ba cạnh có thể. Nếu chúng ta sử dụng hai cái kia, chúng ta quay lại trạng thái S 2 . Vì vậy, khi chúng ta ở trạng thái S 1, chúng ta có thể chuyển sang trạng thái S 0 với xác suất 1/3 và sang trạng thái S 2 với xác suất 2/3.S1S0S2S1S0S2

  • Khi chúng tôi đến trạng thái , chúng tôi ở đó vì đó là mục tiêu của chúng tôi. S 0 là trạng thái hấp thụ.S0S0

P= =[PS3S3PS3S2PS3S1PS3S0PS2S3PS2S2PS2S1PS2S0PS1S3PS1S2PS1S1PS1S0PS0S3PS0S2PS0S1PS0S0]= =[01001/302/3002/301/30001]

Đây là một chuỗi Markov hấp thụ với ba trạng thái thoáng qua ( , S 2 , S 1 ) và một trạng thái hấp thụ ( S 0 ).S3S2S1S0

Theo lý thuyết, ma trận chuyển tiếp của chuỗi Markov có trạng thái thoáng qua và trạng thái hấp thụ r có thể được viết lại thành: P = [ Q t R 0 r × t I r ]tr

P= =[QtR0r×ttôir]

nơi là một t × t ma trận mà các chương trình khả năng chuyển từ một trạng thái nào thoáng qua để một trạng thái thoáng qua, trong khi R là một t × r ma trận với các xác suất của việc chuyển khỏi một trong những t trạng thái thoáng qua với một trong những r hấp thụ tiểu bang. Ma trận danh tính I r cho chúng ta thấy rằng khi đạt đến bất kỳ trạng thái hấp thụ r nào , sẽ không có sự chuyển đổi khỏi trạng thái đó. Tất cả các ma trận số 0 0 r × t có thể được hiểu là không có sự chuyển đổi từ bất kỳ rQtt×tRt×rtrtôirr0r×trtrạng thái hấp thụ vào bất kỳ trạng thái thoáng qua .t

Mục của Q t thể hiện xác suất chuyển từ trạng thái i sang trạng thái j theo đúng một bước. Để có xác suất cho k bước, chúng ta cần mục ( i , j ) của Q k t . Tổng kết cho tất cả k , chúng ta có một ma trận chứa trong mục ( i , j ) của nó , số lượt truy cập dự kiến ​​đến trạng thái tạm thời j sau khi bắt đầu từ trạng thái thoáng qua i .(tôi,j)Qttôijk(tôi,j)Qtkk(tôi,j)jtôi

k=0Qtk=(ItQt)1

Để có được số bước cho đến khi được hấp thụ, chỉ cần tổng các giá trị của mỗi hàng của . Điều này có thể được đại diện bởi(ItQt)1

t=(ItQt)11

trong đó là một vectơ cột với tất cả các thành phần bằng 1.1

Hãy để chúng tôi áp dụng điều này cho trường hợp của chúng tôi:

Như đã trình bày ở trên, trong trường hợp của chúng tôi, chúng tôi có = 3 trạng thái thoáng qua và r = 1 trạng thái hấp thụ, do đó: Q t = [ 0 1 0 1 / 3 0 2 / 3 0 2 / 3 0 ]tr

Qt=[0101/302/302/30]R=[001/3]

Ma trận với số lượt truy cập dự kiến ​​là

(ItQt)1=[2.54.531.54.53133]

Ma trận này có thể được giải thích như sau. Bắt đầu từ trạng thái và trước khi được hấp thụ ở S 0, chúng tôi truy cập, trung bình, S 3 2,5 lần, S 2 4,5 lần và S 1 3 lần.S3S0S3S2S1

Số bước dự kiến ​​từ trạng thái đến trạng thái S 0 được cho bởi thành phần đầu tiên của vectơ sau:S3S0

t=[2.54.531.54.53133][111]=[1097].

Thành phần thứ hai và thứ ba của là số bước dự kiến ​​đến S 0 nếu chúng ta bắt đầu từ S 2S 1 tương ứng.tS0S2S1


Tôi không biết mcmc là gì. Tôi phải đọc nó và sau đó kiểm tra giải pháp của bạn. Có bất kỳ lời giải thích mcmc tốt khen ngợi giải pháp của bạn?
Elizabeth Susan Joseph

10
@ElizabethSusanJoseph Lưu ý rằng chuỗi Markov và MCMC (chuỗi Markov Monte Carlo) là hai khái niệm riêng biệt (mặc dù MCMC dựa trên chuỗi Markov). Câu trả lời này không sử dụng MCMC cho bất cứ điều gì. Vì vậy, có lẽ bạn đang tìm kiếm một lời giải thích tốt về chuỗi Markov, không phải về MCMC.
Juho Kokkala

tiagotvv giải thích của bạn sẽ được cải thiện bằng cách xác định và giải thích việc sử dụng ma trận chuyển tiếp P , ý nghĩa của đại lượng r và chiều cao của vectơ cột. Điểm thưởng cho ý nghĩa của các yếu tố tiếp theo của vectơ t . :)
Alexis

@JuhoKokkala - cảm ơn tôi sau đó sẽ xem xét các giải thích chuỗi markov.
Elizabeth Susan Joseph

@Alexis Tôi đã thêm một số giải thích về ma trận và vectơ.
tiagotvv

21

Gọi là số bước dự kiến. Gọi x 1 là số bước dự kiến ​​từ bất kỳ góc nào liền kề với nguồn gốc của con nhện và x 0 ditto cho con kiến.xx1x0

Khi đó x 0 = 1 + 2x=1+x1. Vì x1=1+2x0=1+23x1

x1=1+23x0+13x=1+23x0+13+13x1

ta được . Vậy x 0 = 1 + 2x1=x0+2 ngụ ý rằngx0=7x1=9.x0=1+23x0+43x0=7x1=9

Chúng tôi nhận được câu trả lời của chúng tôi là .x=10

Chỉnh sửa:

Nếu chúng ta vẽ khối lập phương có tọa độ thì 111 là vị trí bắt đầu của con nhện và 000 vị trí của con kiến.(x,y,z)111000

Con nhện có thể di chuyển đến , 101 hoặc 110 .011101110

Theo tính đối xứng của khối, chúng phải có cùng số bước dự kiến ​​với con kiến, ký hiệu là . Từ x 1 , chúng ta hoặc là có thể trở về nguồn gốc (với xác suất 1 / 3 ) hoặc (với xác suất 2 / 3 ), chúng tôi có thể đi đến một trong những điểm 001 , 100 , 010 tùy thuộc vào nhà nước chúng ta đang ở.x1x11/32/3001100010

Một lần nữa, bằng cách đối xứng, những điểm này sẽ có cùng số bước dự kiến ​​mà chúng ta gọi là . Từ những vị trí này chúng ta có thể đạt được mục tiêu trong một bước với xác suất 1 / 3 hoặc quay trở lại một trong những x 1 -positions với xác suất 2 / 3 . Điều này có nghĩa là x 0 = 1x01/3x12/3.x0=131+23(1+x1)=1+23x1


Bạn có thể giải thích thêm câu trả lời của bạn? Vui lòng giải thích bằng thuật ngữ giáo dân :)
Elizabeth Susan Joseph

17

Một sự trừu tượng tốt đẹp để nghĩ về nó là:

Hãy nghĩ về Vị trí của Kiến là và Nhện ( 1 , 1 , 1 ) , bây giờ mỗi lần di chuyển con nhện có thể thực hiện sẽ chuyển đổi chính xác một trong ba thành phần từ 1 0 hoặc 0 1 . Vì vậy, câu hỏi trở thành:(0,0,0)(1,1,1)1001

If I randomly switch bits in (1,1,1) after how many steps in average do I get 0,0,0

Chúng tôi thấy cách ngắn nhất là 3 công tắc. Vì nó không quan trọng với bit nào nên tôi bắt đầu xác suất xảy ra 1 * 2/3 * 1/3 = 2/9. Nếu chúng ta mắc 1 lỗi (chuyển một bit trở lại 1), chúng ta sẽ cần 5 bước. Và cơ hội phạm sai lầm là 7/9 - nếu chúng ta chỉ muốn mắc một lỗi, chúng ta phải quay lại từ đó và làm lại mọi thứ một lần nữa - vì vậy cơ hội mắc đúng 1 lỗi dẫn đến 5 bước là 7/9 * 2/9cơ hội mắc 2 lỗi aka 7 bước là (7/9)² * 2/9như vậy.

Vì vậy, công thức cho số bước trung bình dự kiến ​​là:

E(steps)=n=0(3+2n)29(79)n=10

Giải pháp của bạn là một số những gì khó hiểu. Công thức này là gì? n ở đây là gì
Elizabeth Susan Joseph

5
Nó thực sự là giải pháp ngắn nhất và sạch nhất. Giải pháp có dạng một tổng số vô hạn từ 0 đến vô cùng và nlà số nguyên hiện tại trong tổng vô hạn đó.
alesc

This is really nice! My answer is similar, but breaks up the sequence of switches into pairs - which lets me expectate a geometric variable (or alternatively, sum a geometric series) rather than sum an arithmetico-geometric series. That's the only substantive difference: it doesn't matter much whether one takes "first three switches, then subsequent pairs" (as you did) or "first switch, then subsequent pairs" (as I did), since unless the fly is caught in 3 switches, then either way you're dealing with one odd and two even parities.
Silverfish

16

Just to compliment tiagotvv's answer:

Tôi không tự nhiên nghĩ về những loại vấn đề này như ma trận (mặc dù chúng là). Tôi phải rút nó ra, điều mà tôi đã làm dưới đây. Bạn có thể thấy rằng có 3 nơi để di chuyển từ S, tất cả đều là As. Từ bất kỳ A nào, bạn có thể quay trở lại S hoặc di chuyển đến một trong hai Bs. Từ bất kỳ B nào, bạn có thể di chuyển đến E hoặc đến một trong hai As. Tất cả điều này chuyển sang ma trận chuyển tiếp được đưa ra bởi tiagotvv, cũng có thể được vẽ dưới dạng biểu đồ.

nhập mô tả hình ảnh ở đây

Bởi vì tôi rất giỏi toán, tôi chỉ cố gắng mô phỏng vấn đề của bạn. Bạn có thể làm điều này với gói markovchain trong R.

  library(markovchain)
  library(ggplot2)

  # Create a markovchain object, given the states and their transition matrix

  mcCube <- new("markovchain", 
                states = c("S", "A", "B", "E"),
                transitionMatrix = matrix(data = c(0,   1,   0,   0,
                                                   1/3, 0,   2/3, 0,
                                                   0,   2/3, 0,   1/3,
                                                   0,   0,   0,   1), 
                                          byrow = T, nrow = 4),
                name = "cube")

  # The following code calcuates the probability of landing on E after taking
  # between 1 and 100 steps from the start, given the above set of transition
  # probabilities.

  start <- c(1, 0, 0, 0)

  list <- list()

  for (i in 1:100){

    list[[i]] <- (start * mcCube^i)[4] 

  }

   a <- do.call(rbind, list)

   data <- data.frame(propE = a, 
                      steps = c(1:100))

   ggplot(data, aes(x = steps, y = propE)) +
    geom_line(size = 1) +
    ylab("Probability you reached the spider") +
    xlab("Number of steps taken") +
    theme_bw() +
    theme(panel.grid.minor = element_blank())

nhập mô tả hình ảnh ở đây

  # This code simulates 1000 different applications of the markov chain where you 
  # take 1000 steps, and records the step at which you landed on E

  list <- list()
  for (i in 1:1000) {


    b <- rmarkovchain(n = 1000, object = mcCube, t0 = "S", include.t0 = T)

    list[[i]] <- 1001 - length(b[b == "E"])

  }

  data <- as.data.frame(do.call(rbind, list))

  ggplot(data, aes(x = V1)) +
    geom_density(fill = "grey50", alpha = 0.5) +
    geom_vline(aes(xintercept = mean(V1))) +
    ylab("Density") +
    xlab("Number of steps to reach E") +
    theme_bw() +
    theme(panel.grid.minor = element_blank())

  mean(data$V1)  # ~10 is the average number of steps to reach E in this set of
                 # simulations

nhập mô tả hình ảnh ở đây

Câu trả lời của tiagotvv có thể được tính bằng R như:

q = matrix(c(0,   1,   0,   
             1/3, 0,   2/3, 
             0,   2/3, 0), byrow = T, nrow = 3)


(solve(diag(3) - q) %*% c(1, 1, 1))[1] # = 10

11

Cân nhắc chẵn lẻ đưa ra một giải pháp rất sạch sẽ, sử dụng máy móc đơn giản đáng ngạc nhiên: không có chuỗi Markov, không có kỳ vọng lặp lại và chỉ có các cuộc tổng kết cấp trung học. Ý tưởng cơ bản là nếu con nhện di chuyển số lần chẵn trongx hướng, nó đã trở lại ban đầu của nó xphối hợp để không thể ở vị trí của con kiến. Nếu nó đã di chuyển một số lần lẻ trongx hướng, sau đó của nó xphối hợp khớp với kiến. Chỉ khi nó di chuyển một số lần lẻ theo cả ba hướng thì nó mới khớp vớix, yz tọa độ của kiến.

Ban đầu, con nhện đã không di chuyển theo bất kỳ hướng nào trong ba hướng, do đó, tính chẵn lẻ cho mỗi hướng là chẵn. Tất cả ba chẵn lẻ cần phải được lật để đạt được con kiến.

Sau động tác đầu tiên của con nhện (hãy dán nhãn theo hướng đó x), exactly one direction has odd parity and the other two (y and z) are even. To catch the ant, only those two parities need to be reversed. Since that can't be achieved in an odd number of subsequent moves, from now on we consider pairs of moves. There are nine possible combinations for the first paired move:

(x,x),(x,y),(x,z),(y,x),(y,y),(y,z),(z,x),(z,y),or(z,z)

We need to move in the y and z directions to reach the ant after one paired move, and two out of nine combinations will achieve this: (y,z) and (z,y) would ensure all three parities are odd.

The other seven combinations leave one odd and two even parities. The three repeated moves, (x,x), (y,y) or (z,z), leave all parities unchanged so we still require one y and one z movement to reach the ant. The other pairs contain two distinct moves, including one in the x direction. This switches the parity of x and one of the other parities (either y or z) so we are still left with one odd and two even parities. For instance the pair (x,z) leaves us needing one more x and one more y to reach the ant: an equivalent situation (after relabelling of axes) to where we were before. We can then analyse the next paired move in the same way.

In general paired moves start with one odd and two even parities, and will either end with three odd parities (with probability 29) and the immediate capture of the ant, or with one odd and two even parities (with probability 79) which returns us to the same situation.

Let M be the number of paired moves required to reach the ant. Clearly M follows the geometric distribution on the support {1,2,3,} with probability of success p=29 so has mean E(M)=p1=92=4.5. Let N be the total number of moves required, including the initial move and the M subsequent paired moves. Then N=2M+1 so, applying linearity of expectations, E(N)=2E(M)+1=2×4.5+1=10.

Alternatively you might note P(Mm)=(79)m1 and apply the well-known formula for the mean of a discrete distribution taking only non-negative integer values, E(M)=m=1P(Mm). This gives E(M)=m=1(79)m1 which is a geometric series with first term a=1 and common ratio r=79 so has sum a1r=117/9=12/9=92. We can then take E(N) as before.

Comparison to Markov chain solutions

How might I have spotted this from the Markov chain transition matrix? Using @DLDahly's notation, the states in the transition matrix correspond to my description of the number of the number of directions with odd parity.

Kiến săn nhện trong khối lập phương

The one-step transition matrix is

P=[PSSPSAPSBPSEPASPAAPABPAEPBSPBAPBBPBEPESPEAPEBPEE]=[01001/302/3002/301/30001]

The first row show us that after one movement, the spider is guaranteed to be in state A (one odd and two even parities). The two-step transition matrix is:

P(2)=P2=[1/302/3007/902/92/904/91/30001]

The second row shows us that once the spider has entered state A, in two moves time it has either returned to state A with probability 7/9 or has reached state E (all odd parities) and captured the ant, with probabilty 2/9. Vì vậy, khi đạt đến trạng thái A, chúng ta thấy từ ma trận chuyển tiếp hai bước rằng số lượng bước di chuyển hai bước cần thiết có thể được phân tích bằng cách sử dụng phân phối hình học như trên. Đây không phải là cách tôi tìm thấy giải pháp của mình, nhưng đôi khi đáng để tính toán một vài sức mạnh đầu tiên của ma trận chuyển đổi để xem liệu một mẫu hữu ích như thế này có thể được khai thác hay không. Thỉnh thoảng tôi thấy điều này đưa ra các giải pháp đơn giản hơn là phải đảo ngược ma trận hoặc thực hiện phân tích bằng tay - thừa nhận một điều gì đó chỉ thực sự phù hợp trong một tình huống thi hoặc phỏng vấn.


2

Tôi đã viết một chương trình Java ngắn để trả lời câu hỏi của bạn bằng số. Việc di chuyển của nhện là thực sự ngẫu nhiên, có nghĩa là nó cũng có thể di chuyển theo chu kỳ trước khi đến với kiến.

Tuy nhiên, bạn không định nghĩa thuật ngữ "góc đối diện", vì vậy tôi có hai kịch bản khác nhau. Đối diện như trong trên cùng một mặt phẳng hoặc như trên khối lập phương. Trong kịch bản đầu tiên, đường dẫn ngắn nhất là 2 bước và 3 bước trong kịch bản thứ hai.

Tôi đã sử dụng 100 triệu lần lặp lại và kết quả như sau:

-- First scenario --
Steps sum: 900019866
Repeats: 100000000
Avg. step count: 9.00019866

-- Second scenario --
Steps sum: 1000000836
Repeats: 100000000
Avg. step count: 10.00000836

Mã nguồn:

import java.util.Random;
import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.IntStream;

public class ProbabilityQuizSpider {

    // Edges of the cube
    private static final int[][] EDGES = new int[][] {
            {1, 3, 7}, // corner 0
            {0, 2, 4}, // corner 1
            {1, 3, 5}, // corner 2
            {0, 2, 6}, // corner 3
            {1, 5, 7}, // corner 4
            {2, 4, 6}, // corner 5
            {3, 5, 7}, // corner 6
            {0, 4, 6}  // corner 7
    };

    private static final int START = 0; // Spider
    private static final int FINISH = 5; // Ant
    private static final int REPEATS = (int) Math.pow(10, 8);

    public static void main(String[] args) {

        final Random r = new Random();
        final AtomicLong stepsSum = new AtomicLong();

        IntStream.range(0, REPEATS).parallel().forEach(i -> {

            int currentPoint = START;
            int steps = 0;

            do {

                // Randomly traverse to next point
                currentPoint = EDGES[currentPoint][r.nextInt(3)];

                // Increase number of steps
                steps++;

            } while(currentPoint != FINISH);

            stepsSum.addAndGet(steps);

        });

        // Results
        System.out.println("Steps sum: " + stepsSum.get());
        System.out.println("Repeats: " + REPEATS);
        System.out.println("Avg. step count: " + (((double) stepsSum.get()) / ((double) REPEATS)));

    }

}

EDIT: đã sửa lỗi chính tả trong tập lệnh (và cũng cập nhật kết quả)


2
Tôi nghĩ rằng các cạnh của bạn là sai. Góc 3 có 7 trong danh sách, nhưng góc 7 không có 3 trong danh sách. (Tôi đề nghị rằng Cách đúng để ánh xạ các đỉnh tới các số 0..7 là để nói rằng mỗi vị trí bit tương ứng với một trục, sao cho việc đi qua một cạnh bằng XOR với 1, 2 hoặc 4.)
Gareth McCaughan

1
Cảm ơn bạn vì lời góp ý. Tôi đã mắc một lỗi đánh máy khi xác định góc số 3, nó nên như vậy {0, 2, 6}. Tôi đã chạy lại chương trình và nhận được kết quả như sau: 10,00000836 bước để di chuyển từ góc số 0 đến góc số 5 (đường chéo cơ thể của khối lập phương). Điều này cũng phù hợp với @Hunaphu.
alesc

Yup, tốt hơn nhiều.
Gareth McCaughan

2

Tôi đã giải quyết câu hỏi hóc búa của bạn thông qua mô phỏng Monte Carlo (n= =104) và thu được memộtn(StepS)10.

Monte Carlo Simulation ($n = 10^4$)

Đây là mã R tôi đã sử dụng:

ant = c(0,0,0) # ant's coordinates 

sim = 1e4 # number of MC simulations
steps = numeric() # initialize array of steps

for (i in 1:sim)
{
  spider = c(1,1,1) # spider's coordinates
  count = 0 # initialize step counter

  # while ant's coordinates == spider's coordinates
  while (!isTRUE(all.equal(ant, spider)))
  {

  # random walk in one of three dimensions
  xyz = trunc(runif(1,1,4))

  # let the spider move
  if (spider[xyz] == 1) 
    {
    spider[xyz] = 0
    } else if (spider[xyz] == 0) 
    {
    spider[xyz] = 1
    }

  # add one step
  count = count + 1
  }

# add the number of step occurred in the ith iteration
steps = c(steps, count)

# print i and number of steps occurred
cat("\n", i, " ::: ", count)
}

# print the mean of steps
(mean(steps))

9
Mã này rất hay và rõ ràng - nhưng nó yêu cầu khá nhiều người dùng của bạn xem một triệu dòng được in trong vòng nửa giờ! Và làm thế nào để bạn biết câu trả lời đúng không, nói,10h0001? :-) FWIW, bạn có thể khai thác một số Rchức năng gốc để tăng tốc độ này lên dưới một giây:n.sim <- 1e6; x <- matrix(runif(n.sim*3), ncol=3); moves <- x >= pmax(x[, 1], x[, 2], x[, 3]); positions <- apply(moves, 2, cumsum) %% 2; types <- rowSums(positions); vertices <- types[types==0 | types==3]; transitions <- cumsum(diff(vertices) != 0); n.sim / transitions[length(transitions)]
whuber

-1

Tôi tin rằng alesc đang đi đúng hướng khi đề cập "Tuy nhiên, bạn không định nghĩa thuật ngữ" góc đối diện "Trừ khi tôi thiếu điều gì đó trong câu hỏi, không có câu trả lời đúng, chỉ có câu trả lời dựa trên giả định. Kích thước khối không được xác định IE 10 khối ft, 1000 khối v.v ... Kích thước kiến ​​không được xác định Khu vườn nhỏ IE, thợ mộc, khổng lồ đỏ, v.v. Loại nhện không được xác định (để xác định kích thước bước) Khu vườn nhỏ IE, Tarantula, vv NẾU bạn kết hợp tất cả "không xác định "các biến. câu trả lời có thể là 0 bước hoặc số bước không xác định / vô hạn.


3
Câu trả lời này sẽ không đưa người ta đến một cấp độ phỏng vấn tiếp theo trừ khi có lẽ là cho một vị trí làm vườn.
whuber

1
Trong trường hợp này, đủ rõ ràng rằng 'bước' có nghĩa là 'di chuyển từ một nút (góc) sang nút liền kề' và khá rõ ràng "góc đối diện" của khối có nghĩa là gì - ví dụ: lấy một khối đơn vị - con kiến ​​ở góc (x, y, z) trên một khối đơn vị, con nhện ở (1-x, 1-y, 1-z) (vì vậy nếu con kiến ​​ở gốc, con nhện ở (1,1 , 1)). Như vậy, không có mối quan tâm nào của bạn dường như liên quan đáng kể đến câu hỏi đang được hỏi. [Lưu ý với cử tri: Mặc dù tôi không nghĩ rằng đây là một câu trả lời hay mà không cần chỉnh sửa, tôi không nghĩ đây nên là chủ đề của một cuộc bỏ phiếu bỏ phiếu - lên và xuống phiếu bầu]
Glen_b -Reinstate Monica

@Glen_b Vì dường như đang tìm kiếm sự rõ ràng về các chi tiết của câu hỏi, tôi nghĩ rằng điều này có lẽ nhằm mục đích như một nhận xét hơn là một câu trả lời thực chất.
Cá bạc

1
@Silverfish Bạn có thể đúng, nhưng sau đó nó sẽ đóng như 'không phải là một câu trả lời'. Thay vào đó, tôi đọc nó như một nỗ lực để nói "câu hỏi này không thể trả lời được", điều mà tôi thường coi là một câu trả lời khi được hỗ trợ với lý luận, nhưng tôi nghĩ lý do đơn giản chỉ dựa trên việc hiểu sai câu hỏi.
Glen_b -Reinstate Monica
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.