עזרה סטטיסטיקאי ברמה גבוהה? יש כאן אולי?

gt12

משתמש חדש
בעצם בין השורות יכולות להיות מקסימום 6 ספרות זהות?
זאת אומרת שמה שאתה רוצה זה את כל הצירופים בגודל 7 של המספרים 1-50 כאשר בכל ספרה לא יכולה להיות פעמיים ואין 2 שורות זהות?
או שיש עוד תנאי שאתה צריך שיתקיים?
 

מתן מאור

משתמש סופר מקצוען
כתיבה ספרותית
אם הבנתי נכון את השאלה.

1. אנחנו צריכים לחשב את כל הצירופים האפשריים שיש לעשרים וחמש ספרות בסדרות של שבע.
2. אסור שיופיע פעמיים אותו מספר ברצף מסוים.

אם כך החשבון הוא:
25 * 24 *23 * 22 * 21 * 20 * 19 = 2,422,728,000​
 

shloimi

משתמש רשום
אם הבנתי נכון את השאלה.

1. אנחנו צריכים לחשב את כל הצירופים האפשריים שיש לעשרים וחמש ספרות בסדרות של שבע.
2. אסור שיופיע פעמיים אותו מספר ברצף מסוים.

אם כך החשבון הוא:
25 * 24 *23 * 22 * 21 * 20 * 19 = 2,422,728,000​
כן ולא
אסור שיופיע אותו מספר פעמיים בכל צירוף.
ואנחנו מחפשים את כל הצירופים האפשריים של 7 שלא יהיה באף אחד מהם 6 שהם שווים
כלומר שלא יהיה 1234567-1234568 כי אז יש 6 ספרות שוות . חוץ מזה הכל יכול להיות . 5 ספרות שוות 4 3 2 1 . הכל יהיה רק לא 6.
כמה צירופים כאלו יכולים לצאת מ25 (או מכל מספר אחר ) .
ואני ירחיב טיפה.. קח את המספרים 1-8 אין אפשרות לעשות מהם צירופים של 7 שאין בהם 6 ספרות שווים . כי 1234567- 1234568- 2345678- בכל דך תמיד יהיו 6 שווים בכל צירוף.
מ9 ספרות זה כבר אפשרי 1234567-1234589-
איך אני יודע לחשב כמה צירופים כאלו אצליח ליצור מ25 מספרים או מכל מספר אחר הגבוה מ9?
מי שהבין יאותגר. מי שלא הבין סליחה שהטרחתי
 

shloimi

משתמש רשום
בעצם בין השורות יכולות להיות מקסימום 6 ספרות זהות?
זאת אומרת שמה שאתה רוצה זה את כל הצירופים בגודל 7 של המספרים 1-50 כאשר בכל ספרה לא יכולה להיות פעמיים ואין 2 שורות זהות?
או שיש עוד תנאי שאתה צריך שיתקיים?
עוד תנאי 1 יש
שלא יהיו לא רק 7 זהות אלא גם לא 6 זהות
לא יהיה 1234567-1234568 כי אז יש 6 ספרות זהות.
6 אסור - עד 6 מותר!
כמה שורות של 7 יהיו לי כאלו ?
 

ETA

משתמש פעיל
אם הסטטיסטיקאים לא ידעו,
אפשר לכתוב תוכנה קצרה שתחשב את זה.
1. לרוץ בלולאה על מספרים 1-25 (ובתוך זה עוד לולאה וכו...)
2. לבנות מחרוזת של שבעה מספרים
3. לשמור את עבור כל מחרוזת 2 רצפים בזכרון (6 המספרים הראשונים + 6 המספרים האחרונים)
4. אם הרצף כבר קיים בזכרון לא לספור את המחרוזת, אם לא קיים, לספור אותה
קל
 

מנוי פרימיום

מהמשתמשים המובילים!
מנוי פרימיום
הנדסת תוכנה
D I G I T A L
יוצרי ai
3. לשמור את עבור כל מחרוזת 2 רצפים בזכרון (6 המספרים הראשונים + 6 המספרים האחרונים)
ששת המספרים יכולים להיות גם לא ברצף, תצטרך לשמור את כל ששת הצירופים עבור כל צירוף של 7 שעברת עליו
4. אם הרצף כבר קיים בזכרון לא לספור את המחרוזת, אם לא קיים, לספור אותה
קל
יתכן שאם תתחיל את הלולאה במקום אחר תקבל תוצאה שונה, לא כל כך קל
 

ETA

משתמש פעיל
ששת המספרים יכולים להיות גם לא ברצף, תצטרך לשמור את כל ששת הצירופים עבור כל צירוף של 7 שעברת עליו
אוקי, גם לא ברצף וגם לא לפי הסדר? או רק לא ברצף?
יתכן שאם תתחיל את הלולאה במקום אחר תקבל תוצאה שונה, לא כל כך קל
מה הכוונה שהלולאה תתחיל במקום אחר?
המספר הסופי חייב לצאת בסוף זהה מכל מקום שנתחיל לבדוק.
 

שימיגם

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

השאלה הם אתה רוצה לדעת רק כמה טבלאות יש, או לראות בעיין את כל המספרים
כל כותב קוד מתחיל יכול לבנות פונקציה בעשר שניות שתביא את התוצאה
 
וואו, איתגרת אותי!
זה אמור להיות קשור להתפלגות היפרגאומטרית אך מכיוון שלא הצלחתי לחשב, כתבתי סקריפט שמחשב, @שימיגם זה ממש לא ב -10 שניות, רק ההרצה לבד לקחה 20 דקות,
מספר האפשרויות המלא (25 מספרים להעמיד ב 7 מרובעים) - 480700
האפשרויות בלי יותר מ 5 מספרים שחוזרות על עצמן - 1043
מצורפים הקבצים של התוצאות התקינות ושל הסקריפט
 

קבצים מצורפים

  • קומבינציות אפשריות .txt
    KB 27.7 · צפיות: 49
לא נתן לצרף את הסקריפט בפייתון, כותבת את הקוד כאן -
Python:
from itertools import combinations

arr_comb = range(1,26)
max_repit = 5
len_test = 7
comb = set(combinations(arr_comb, len_test))
good_numbers = set()
bad_numbers = set()
test_nambers = comb.copy()

for c in sorted(comb):
  if c in bad_numbers:
    continue
  good_numbers.add(c)
  comb2 = set(combinations(c, max_repit))
  filter_nums = set()
  for sub_c in test_nambers:
    if [a for a in comb2 if set(a).issubset(sub_c)]:
      filter_nums.add(sub_c)
  # print(filter_nums)
  bad_numbers.update(filter_nums)
  print(f"len of bad numbers: {len(filter_nums)}")
  test_nambers = test_nambers - filter_nums


print("full comb")
print(len(comb))
print(comb)
print("bad comb")
print(len(bad_numbers))
print("good comb")
print(len(good_numbers))
print(sorted(good_numbers))
 

חנה ש.

צלמת אוֹמָנית
מנוי פרימיום
כתיבה ספרותית
צילום מקצועי
יוצרי ai
@hippopotomonstrosesquippedaliophobia
לא יודעת לכתוב קודים אבל כן הצלחתי לפענח את השם -
היפופוטם - מונסטר (מפלצת) ... /קיפדיה - לי - או פוביה.
זה יוצא משהו כמו: מפלצת היפופוטמית ויקפדית פוביה.
מקורי.
 

shloimi

משתמש רשום
וואו, איתגרת אותי!
זה אמור להיות קשור להתפלגות היפרגאומטרית אך מכיוון שלא הצלחתי לחשב, כתבתי סקריפט שמחשב, @שימיגם זה ממש לא ב -10 שניות, רק ההרצה לבד לקחה 20 דקות,
מספר האפשרויות המלא (25 מספרים להעמיד ב 7 מרובעים) - 480700
האפשרויות בלי יותר מ 5 מספרים שחוזרות על עצמן - 1043
מצורפים הקבצים של התוצאות התקינות ושל הסקריפט
וואו , אין מילים על המאמץ. ובעיקר על הנוסחה .
במבט מלמעלה בתוצאות זה נראה כמו בלי 5 שחוזרות על עצמם ולא בלי יותר מ5 שזה בעצם בלי 6 שחוזרות
יתכן שאצטרך עזרה בהרצה נוספת , אבל שאפו על ההצלחה! - טובי הסטטיסטיקאים נכשלו במשימה
אשמח לקוד c של שורת הפקודה שנשלחה כדי לנסות לבצע לבד. כאן הפקודה לא מגיעה טוב אז אם אפשר לשלוח למייל
motki1010

ואם יש אפשרות להרצה נוספתת של פקודות נמשיך משם
תודה רבה מאוד ושבת שלום
 

shloimi

משתמש רשום
אם נדייק - הם עמדו במשימות שתיארת בהתחלה שנועדו לחישוב אנושי ולא לחישוב מכונה - מתכנתים
בהחלט נכון. זו משימה שאפילו להגדיר אותה נכון היה קשה

והכוונה היתה לסטטיסטיקאים לא מכאן. שניסו ניסו ולא ידעו איך לבצע את זה.
 
במבט מלמעלה בתוצאות זה נראה כמו בלי 5 שחוזרות על עצמם ולא בלי יותר מ5 שזה בעצם בלי 6 שחוזרות
צודק, טעיתי
ניסיתי להריץ אם התיקון (לשנות את השורה max_repit = 5 ל 6)
אבל מכיוון שההרצה לוקחת הרבה זמן אנסה לשפר את הקוד, כשאתפנה..)
בסטטיסטיקה זה היה מסובך, כי אמנם אפשר לחשב את המקרה הבדיד אבל יותר מורכב (לדוגמה כמה פעמים נקבל צירף מסוים, אבל פה זה לא בדיוק כך, בטוחה שיש לזה איזשהו חישוב אבל בהחלט רק ליודעי חן...)
 

shloimi

משתמש רשום
צודק, טעיתי
ניסיתי להריץ אם התיקון (לשנות את השורה max_repit = 5 ל 6)
אבל מכיוון שההרצה לוקחת הרבה זמן אנסה לשפר את הקוד, כשאתפנה..)
בסטטיסטיקה זה היה מסובך, כי אמנם אפשר לחשב את המקרה הבדיד אבל יותר מורכב (לדוגמה כמה פעמים נקבל צירף מסוים, אבל פה זה לא בדיוק כך, בטוחה שיש לזה איזשהו חישוב אבל בהחלט רק ליודעי חן
 

shloimi

משתמש רשום
צודק, טעיתי
ניסיתי להריץ אם התיקון (לשנות את השורה max_repit = 5 ל 6)
אבל מכיוון שההרצה לוקחת הרבה זמן אנסה לשפר את הקוד, כשאתפנה..)
בסטטיסטיקה זה היה מסובך, כי אמנם אפשר לחשב את המקרה הבדיד אבל יותר מורכב (לדוגמה כמה פעמים נקבל צירף מסוים, אבל פה זה לא בדיוק כך, בטוחה שיש לזה איזשהו חישוב אבל בהחלט רק ליודעי חן...)
תודה רבה מאוד
האמת שבמקום שאני צריך את החישוב הזה יש צורך בעוד כמה פרמטרים .
נשמח לדעת מה הקוד אולי נוכל לבצע זאת לבד, ונשמח להעזר מקצועית אם יתאפשר בהמשך, אבל אין טעם להטריח את כל יושבי הפורום שגם כך התעייפו סופית רק מלקרוא את השאלה .
 
אם הבנתי נכון את השאלה.

1. אנחנו צריכים לחשב את כל הצירופים האפשריים שיש לעשרים וחמש ספרות בסדרות של שבע.
2. אסור שיופיע פעמיים אותו מספר ברצף מסוים.

אם כך החשבון הוא:
25 * 24 *23 * 22 * 21 * 20 * 19 = 2,422,728,000​
לא למדתי מתמטיקה רק במקום שאסור להרהר בדברי תורה..., אבל גם לפי איך שהבנת את השאלה הפיתרון הוא 25*24*23*22*21*20*19 לחלק ל (1*2*3*4*5*6*7) =480,700
כלומר התוצאה היא תמיד X*X-1.... למשך Y פעמים לחלק ל1*2*3..... למשך Y פעמים, כשX הוא סך המספרים שיש לבחור מתוכם ו Y זה כמות הספרות בסדרה.
והראיה שצירוף שני מספרים מתוך 10 מביא ל 10*9 לחלק ל1*2 =45, תוכל לספור ולבדוק את זה, (יש לי הוכחה לנוסחה הזו מפירמידה של קוביות אבל מסובך להסביר אותה מעל גבי הפורום, הגעתי לזה כשחישבתי כמה אפשרויות יש למנעול כספת)
ובקשר לשאלה שבתחילת הנושא, זה אתגר מעניין אחשוב על זה פעם שיהיה לי זמן (ויהיה אסור להרהר בד"ת)
 

אולי מעניין אותך גם...

הפרק היומי

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


תהילים פרק קכו

א שִׁיר הַמַּעֲלוֹת בְּשׁוּב יי אֶת שִׁיבַת צִיּוֹן הָיִינוּ כְּחֹלְמִים:ב אָז יִמָּלֵא שְׂחוֹק פִּינוּ וּלְשׁוֹנֵנוּ רִנָּה אָז יֹאמְרוּ בַגּוֹיִם הִגְדִּיל יי לַעֲשׂוֹת עִם אֵלֶּה:ג הִגְדִּיל יי לַעֲשׂוֹת עִמָּנוּ הָיִינוּ שְׂמֵחִים:ד שׁוּבָה יי אֶת (שבותנו) שְׁבִיתֵנוּ כַּאֲפִיקִים בַּנֶּגֶב:ה הַזֹּרְעִים בְּדִמְעָה בְּרִנָּה יִקְצֹרוּ:ו הָלוֹךְ יֵלֵךְ וּבָכֹה נֹשֵׂא מֶשֶׁךְ הַזָּרַע בֹּא יָבוֹא בְרִנָּה נֹשֵׂא אֲלֻמֹּתָיו:
נקרא  55  פעמים

לוח מודעות

למעלה