ABA


"אתגר הפורום מספר 1 - נערך"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #14237 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14237
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   15:36   02.08.07   
אל הפורום  
  אתגר הפורום מספר 1 - נערך  
 
   עוגן האשכול הוסר בתאריך 13.08.07 בשעה  21:20  על-ידי Net_Boy, (סגן מנהל)
 
סוף שבוע טוב לכולם
לפי דרישה , החלטתי לנסות להריץ במתכונת מסוימת אתגר לפורום
האתגר יכול להיות כתיבת אלגוריתם מסוים , תוכנית מסוימת , חידה מתמטית וכו'...
משך האתגר יקבע לפי רמת הקושי שלו.


לשבוע הראשון ישר קפצה לי לעין ההודעה של zip_zap שנותרה ללא ממענה (לפחות נכון לרגע כתיבת ההודעה)

נתון מערך בגודל N.
X מספר טבעי , Y מספר שלם
צריך למצוא X מספרים מהמערך שסכומם יהיה שווה ל Y.
את כל האפשרויות.

מותר להשתמש בשפת C\C++
או בפסואדו קוד .

משך האתגר : שבוע

המנצח יהיה מי שיכתוב את הקוד היעיל ביותר לאתגר הזה
ויזכה בwinner .
למי שלא יודע מהי יעילות , שיעיין בקישור הבא
http://he.wikipedia.org/wiki/%D7%99%D7%A2%D7%99%D7%9C%D7%95%D7%AA_%D7%90%D7%9C%D7%92%D7%95%D7%A8%D7%99%D7%AA%D7%9E%D7%99%D7%AA

שיהיה המון בהצלחה לכולם


עריכה :
1) בהחלט יכולים להיות כפילויות במערך.
2) מותר להדפיס חזרות רק כאשר יש כפילויות. והחזרות יהיו של הכפילויות
לדוגמא במערך 1,3,5,8 כאשר n=2 והמספר הוא 4
יודפס 1,3 בלבד (ולא פעמיים)

אבל לעומת זאת במערך כמו 1,3,1,5,8 יודפס
1,3
3,1
זה על מנת לחסוך עבודה שחורה.


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  סחטיין על ההעלאה של האתגר... בהצלחה למשתתפים :) Nesher  02.08.07 18:45 1
  סה''כ הרעיון עצמו יחסית פשוט לבצע DLN 02.08.07 18:46 2
     ת'יודע מה אני אכתוב את זה עכשיו :) DLN 02.08.07 18:47 3
         טוב זה פגום ברמות מטורפות ולא עובד מן הסתם אבל זה בסיס :| DLN 02.08.07 19:11 4
  יש לי רעיון לאלוגריתם ברקורסיה לפנים בנושא. idan192 03.08.07 17:35 5
  פתרון - קוד ב C Static 04.08.07 21:11 6
     תודה רבה על המאמץ! אבל לצערי... zip_zap 05.08.07 21:48 7
         אם יש לך את הניסוח המקורי של השאלה Static 06.08.07 15:06 8
             השאלה היא ככה DLN 06.08.07 15:13 9
                 אז תריצו את הקוד שלי Static 06.08.07 15:36 10
                     זה עובד רק בדוגמה שאתה הבאת... zip_zap 06.08.07 16:10 11
                         אוקיי אני אבדוק אבל מזה n מאיפה צץ המשתנה הזה? Static 06.08.07 16:36 12
  נראה לי שזה בסדר איש-האבוקות 08.08.07 15:25 13
     לי זה לא עובד.. עידן_הכלי 09.08.07 22:31 14
         הנה איש-האבוקות 10.08.07 02:16 15
             טעות איש-האבוקות 10.08.07 12:43 16
             תנסה להריץ עבור המערך הזה: עידן_הכלי 10.08.07 22:18 17
                 עד כמה שאני יודע 1+2+16=19 איש-האבוקות 11.08.07 01:00 18
                     חחח וואי עידן_הכלי 11.08.07 15:00 19
  הזוכה הוא איש האבוקות והוא מקבל ווינר , כל הכבוד :) Net_Boy  11.08.07 19:30 20
     סידרו כבר את העניינים חחח אז אמור להיות לו Nesher  12.08.07 21:52 21
         אפשר עוד אתגר :)? idan192 13.08.07 18:37 22
             יהיה לי משהו לסופ''ש אני מקווה Net_Boy  13.08.07 21:35 23

       
Nesher  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 2.7.02
2 הודעות, 24 פידבק
   18:45   02.08.07   
אל הפורום  
  1. סחטיין על ההעלאה של האתגר... בהצלחה למשתתפים :)  
בתגובה להודעה מספר 0
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   18:46   02.08.07   
אל הפורום  
  2. סה''כ הרעיון עצמו יחסית פשוט לבצע  
בתגובה להודעה מספר 0
 
   עבר עריכה לאחרונה בתאריך 02.08.07 בשעה 18:52 על-ידי Nesher (מנהל הפורום)
 
אני כבר עכשיו מצליח לחשוב על פתרון אפשרי
הבעיה הוא שהוא יהיה די ארוך ודי לא יעיל :|

עריכת מנהל:
אנשים ימצאו השראה לבד.. תודה בכל זאת


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   18:47   02.08.07   
אל הפורום  
  3. ת'יודע מה אני אכתוב את זה עכשיו :)  
בתגובה להודעה מספר 2
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   19:11   02.08.07   
אל הפורום  
  4. טוב זה פגום ברמות מטורפות ולא עובד מן הסתם אבל זה בסיס :|  
בתגובה להודעה מספר 3
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
idan192

   17:35   03.08.07   
אל הפורום  
  5. יש לי רעיון לאלוגריתם ברקורסיה לפנים בנושא.  
בתגובה להודעה מספר 0
 
   ברגע שיהיה לי קצת זמן פנוי אתחיל לעבוד על ה-SourceCode עצמו.

יש מצב אבל לתת נושא שיהיה יותר נוח לקלט ופלט? למשל אם יש לך מערך של גדלי קבצים שאתה רוצה לצרוב בדיסקים בגודל מסויים - מתי הסידור יהיה אופטימלי.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות
   21:11   04.08.07   
אל הפורום  
  6. פתרון - קוד ב C  
בתגובה להודעה מספר 0
 
   תהנו.. אומנם רקורסיבי אבל עובד..
אני אסביר בקצרה ...

B=125
זה המספר שאנחנו רוצים להגיע אליו
באמצעות חיבור של המספרים שנמצאים במערך A

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

תהנו

https://rotter.name/User_files/nor/46b4c0b325fde1a6.txt


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
zip_zap
חבר מתאריך 18.9.06
192 הודעות
   21:48   05.08.07   
אל הפורום  
  7. תודה רבה על המאמץ! אבל לצערי...  
בתגובה להודעה מספר 6
 
   ערכתי לאחרונה בתאריך 05.08.07 בשעה 21:49 בברכה, zip_zap
 
או שלא הבנת נכון את השאלה,
או שסתם לא הצליח ממש,

אבל התוכנית שכתבת לא תיתן את כל האופציות לחיבור n מספרים מתוך המערך A שהוא בגודל N, כך שסכומם יהיה B.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות
   15:06   06.08.07   
אל הפורום  
  8. אם יש לך את הניסוח המקורי של השאלה  
בתגובה להודעה מספר 7
 
   ואולי גם איזה דוגמה מספרית
אז אולי אני אוכל לעזור לך יותר..

בכל מקרה לפי מה שהבנתי זאת התשובה..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות
   15:13   06.08.07   
אל הפורום  
  9. השאלה היא ככה  
בתגובה להודעה מספר 8
 
   לפחות לפי ההודעה הראשונה שלו
נתון לך מערך בגודל N
אתה צריך למצוא X מספרים מתוך המערך הזה שסכומם הוא Y
כל הצירופים האפשריים


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות
   15:36   06.08.07   
אל הפורום  
  10. אז תריצו את הקוד שלי  
בתגובה להודעה מספר 9
 
   ותראו שזה בדיוק מה שקורה

יש את B שמציבים בו מס' כלשהו
ויש את A - מערך של מס'

בהרצת התוכנית בודקים ע"י צירופים של המספרים במערך A אם ניתן להגיע למס' B

וזהו..


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
zip_zap
חבר מתאריך 18.9.06
192 הודעות
   16:10   06.08.07   
אל הפורום  
  11. זה עובד רק בדוגמה שאתה הבאת...  
בתגובה להודעה מספר 10
 
   תנסה לבדוק גם n ו B שונים ותראה שהתוכנית לא עושה מה שצריך...
נסה לדוגמא את {A= {0,1,2,3,4,5,6,7 ,
B=8
n=2


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות
   16:36   06.08.07   
אל הפורום  
  12. אוקיי אני אבדוק אבל מזה n מאיפה צץ המשתנה הזה?  
בתגובה להודעה מספר 11
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
איש-האבוקות

   15:25   08.08.07   
אל הפורום  
  13. נראה לי שזה בסדר  
בתגובה להודעה מספר 0
 
   https://rotter.name/User_files/nor/46b9b62b4c5198d8.txt


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
עידן_הכלי

   22:31   09.08.07   
אל הפורום  
  14. לי זה לא עובד..  
בתגובה להודעה מספר 13
 
   יש לך דוגמה?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
איש-האבוקות

   02:16   10.08.07   
אל הפורום  
  15. הנה  
בתגובה להודעה מספר 14
 
   ערכתי לאחרונה בתאריך 10.08.07 בשעה 02:21 בברכה, איש-האבוקות
 
https://rotter.name/User_files/nor/46bb9f6c15007012.txt

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
איש-האבוקות

   12:43   10.08.07   
אל הפורום  
  16. טעות  
בתגובה להודעה מספר 15
 
   ערכתי לאחרונה בתאריך 10.08.07 בשעה 12:43 בברכה, איש-האבוקות
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
עידן_הכלי

   22:18   10.08.07   
אל הפורום  
  17. תנסה להריץ עבור המערך הזה:  
בתגובה להודעה מספר 15
 
   ערכתי לאחרונה בתאריך 10.08.07 בשעה 22:18 בברכה, עידן_הכלי
 
זה מערך המספרים:
{7,1,2,35,4,45,16,7}
תמצא לי פה 3 מספרים שסכומם 20.

זה אמור להיות 1,2,16.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
איש-האבוקות

   01:00   11.08.07   
אל הפורום  
  18. עד כמה שאני יודע 1+2+16=19  
בתגובה להודעה מספר 17
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
עידן_הכלי

   15:00   11.08.07   
אל הפורום  
  19. חחח וואי  
בתגובה להודעה מספר 18
 
   יצאתי ליצן..

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   19:30   11.08.07   
אל הפורום  
  20. הזוכה הוא איש האבוקות והוא מקבל ווינר , כל הכבוד :)  
בתגובה להודעה מספר 0
 
   אגב תחשבו איך היה אפשר לייעל את זה יותר , בוא נגיד תנסו לחשוב על מערכים מאד מאד מאד גדולים.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Nesher  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 2.7.02
2 הודעות, 24 פידבק
   21:52   12.08.07   
אל הפורום  
  21. סידרו כבר את העניינים חחח אז אמור להיות לו  
בתגובה להודעה מספר 20
 
ערכתי לאחרונה בתאריך 12.08.07 בשעה 22:56 בברכה, Nesher
 
מזל טוב וכל הכבוד
קצת היה בילבול גם עם הוינר/צל"ש.. לא נורא, שיהיה לו מה לעשן חחח


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
idan192

   18:37   13.08.07   
אל הפורום  
  22. אפשר עוד אתגר :)?  
בתגובה להודעה מספר 21
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק
   21:35   13.08.07   
אל הפורום  
  23. יהיה לי משהו לסופ''ש אני מקווה  
בתגובה להודעה מספר 22
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net