השוואת פלט - מספרים פראיים

אני מצרף פלט עבור הקלטים הבאים, אשמח להשוות מול אנשים נוספים:

1386
138656
55478632
4576876578
45766348876578

הפלט:

[2, 3, 3, 7, 11]
[2, 2, 2, 2, 2, 7, 619]
[2, 2, 2, 11, 19, 33181]
[2, 3, 3, 17, 14957113]
[ 2, 3, 11, 1741, 398293813]

אכן.
רק נקודה למחשבה - אם אתה מוציא את זה כרשימה - זה לא סותר את מהות התרגיל? אתה למעשה נאלץ להמתין עד ליצירת הרשימה במלואה…

לייק 1

יתכן בהחלט שאתה צודק! פשוט בצורה זו אני יכול למיין את הפלט…

ים ענה כשאאלתי אותו שאין צורך שהפלט יהיה ממוין… כל מספר שאתה מוצא ישר תוציא

2 לייקים

יצא לי גם אותו דבר,
נתקלת גם בהאטה מהקלט הרביעי?

כמה זמן לקח המספר החמישי? שמתי אצלי ואני עדיין מחכה לתוצאה… (כבר כמה דקות)

לי זה לקח כ-2 דקות שבהן נתתי למחשב שלי להתמקד רק בזה

לי לקח 73 שניות, הגיוני שיקח כמה דקות אפילו אם המחשב לא חזק במיוחד.יש עוד דברים שרצים ברקע

לייק 1

הכנסתי שיפור משמעותי (עכשיו הפונקציה / גנרטור עוצרים במכפיל האחרון אבל זה עדיין לקח ~10 דקות להגיע לתוצאה של הדוגמא האחרונה לעיל, ולא עוזר בכלל במקרים שהמספר המוגרל הוא מספר ראשוני (הפתיע אותי כמה כאלו יש, אלא אם כן ל- random יש נטייה למספרים ראשוניים משום מה)

המחשב שלי (לפטופ) עתיק, ויש לי הרבה יותר מדי דברים עובדים במקביל, אבל האם יש איזו פיסת קוד סטנדרטית (שלא קשורה לתרגיל הזה בכלל) שאפשר לנרמל לפיה? לא יודעת האם באמת מדובר במחשב שלי, או ביעילות הקוד (היתה לי אותה בעיה בהערכת הזמן עם ברונו הפיל ומלחמה וזהו משבועות קודמים, שנמשכו אצלי בין 1-2 שניות)

אוקיי. אז הכנסתי מספר שיפורים בקוד (קצת פחות יפה, אבל חוסך לכל הפחות 75% מהניסיונות שהיו לי בסיבוב הראשון, וזה במקרה שהמספר שהגרלתי לדוגמא הוא ראשוני)

תוצאות:

פונקציה:
78165709 is a prime number!
25.4 s ± 1.23 s per loop (mean ± std. dev. of 7 runs, 1 loop each)
גנרטור:
78165709 is the multiplication of the prime numbers:
78165709
is a prime number!
25.3 s ± 938 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

פונקציה:
45766348876578
is the multiplication of the prime numbers: [2, 3, 11, 1741, 398293813]
5min 29s ± 5.85 s per loop (mean ± std. dev. of 7 runs, 1 loop each)
גנרטור:
45766348876578 is the multiplication of the prime numbers:
2
3
11
1741
398293813
1.0
5min 29s ± 3.98 s per loop (mean ± std. dev. of 7 runs, 1 loop each)

לדעתי, אם קיבלת את המספרים הנכונים, חבל יותר להתעסק בזה, בפרט שכתבת שהלפטופ עתיק, אז בכלל לא בטוח שהמאמץ יתן את התוצאה שאת מקווה לה.
הצלחה רבה!