birthday-paradox

    0熱度

    2回答

    我在編程時遇到了Python中生日悖論的問題。生日悖論基本上說,如果一個班有23個人,那麼他們中的兩個將有相同的生日的概率是50%。 我試圖在Python中對這個悖論進行編碼,但它不斷回來的概率接近25%。我對Python非常陌生,所以毫無疑問,這個問題有一個簡單的解決方案。這裏是我的代碼: import random def random_birthdays(): bdays =

    0熱度

    1回答

    因此,我正在研究計算3個隨機素數(小於2^8)的2^4集合的哈希值。然後繼續選擇一組3個合成數(小於2^8),直到有一組{c1, c2, c3}的散列值與之前的一個散列(主要散列值)匹配,該集合將被稱爲{p1,p2,p3}。 從我的理解中,生日攻擊基本上找到了兩個提供相同結果的函數。所以我會創建2個函數?一個用於素數,另一個用於複合?這樣做的最好方法是什麼?我認爲PHP是語言。 任何幫助將不勝感激

    0熱度

    3回答

    我試圖在Javascript中爲23名學生做一個生日悖論事件,它應該給我51%的平均概率,但它總是給我67%左右的數字。這裏的代碼: var pers = []; var D = 0; for (var i = 0; i < 10000; i++) { for (var k = 0; k < 23; k++) { pers.push(Math.floor((Math.ra

    2熱度

    4回答

    我的教授給我們這個幻燈片,而說明哈希碰撞概率:當我擡起頭具有的「生日悖論」生日相同的兩個人的概率 ,我就Wikipedia and other sources的概率發現在n = 10時應該是11.7。實際上,我用他的公式計算出來的每個價值都不同於教授的幻燈片。 所以我的問題是:當他問「在發生碰撞之前我們可以向我們的桌子散列多少學生」,這與計算任何兩名學生有相同生日的概率有什麼不同? 如果是這樣,是

    1熱度

    1回答

    我正在做一些事情,需要安全的隨機,短(〜40位)的ID。他們需要是獨一無二的,這意味着在中央服務器上完成它。 每次使用新的SecureRand都會遇到生日問題,並開始花費更長的時間來生成新條目。 什麼是更好的方法?

    0熱度

    1回答

    我想知道是否可以通過採用uuidv4的變量頭(即:x個第一個字符)來安全地計算使用生日悖論進行碰撞的機會。 用例:我想隨機編號的碰撞機率很小。但是,每張表的記錄數不會超過1.000.000,所以使用uuidv4會過度,我想刪除一些位。這會節省很多,因爲我最終會得到數千張表。天真地,我們可以像建議的那樣採用uuidv4的變量頭來獲得固定數量的隨機比特。然後,使用生日悖論,你可以計算碰撞概率。例如,使

    1熱度

    2回答

    我想模擬兩個以上的學生在一個房間裏有n個人同時生日的概率。目前,我認爲我的代碼是分開工作正常,雖然我最初只是運行的第一行代碼來選擇我的N值,然後運行該代碼的其餘部分(見下文) n = as.integer(readline(prompt = "Enter the number of students in a room:")) sims = 10000 x = numeric(sims)

    1熱度

    2回答

    這是我在Java上的第二天。我在生日悖論中遇到了一個有趣的問題。 生成隨機生日。 用隨機生日創建一個人。 建立一個函數來檢查兩個人是否有相同的生日。 創建一個給定人數的房間n。 建立一個函數來檢查房間裏至少有兩個人是否有相同的生日。 但是,我堅持如何與'人'創建一個'房間',然後比較人的生日。 有誰知道如何做到這一點? 謝謝你的努力和時間! :) class Person { int a

    0熱度

    1回答

    只是想了解生日悖論。 使用下面的代碼,我發現我需要平均12個樣本以獲得生日相撞。 不明白爲什麼它遠低於正常 23人得到一次生日碰撞的一半機會。 即使我使用PyCrypto的StrongRandom,結果也不會改變。 from random import randint from Crypto.Random.random import StrongRandom EXPERIMENTS_NUM =

    0熱度

    1回答

    代碼是運行模擬來找出n個人共享相同生日的概率。 我將隨機分配的生日與一組日期進行了比較。對於任何超過1個等值的日期,我在分子中加1。 但是,答案出現錯誤的代碼。我不知道爲什麼。 import java.util.Scanner; public class birthday { public static void main (String[] args) { Scanner inp = n