Welcome to קודגורו Sign in | Join | Faq

חידות

Started by CGX at 03-20-2007 13:02. Topic has 14 replies.

Print Search
Sort Posts:    
   03-20-2007, 13:02
CGX is not online. Last active: 5/13/2012 10:41:23 PM CGX

Top 10 Posts
Joined on 11-13-2005
Posts 252
חידת הפרשים מתוכנית ג'יגה בית

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

מהו המספר המזערי של פרשים הנחוץ על מנת לאיים על כל 64 המשבצות של לוח שחמט?

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

מהלך פרש - מהמשבצת בקורדינטות

X,Y

אל המשבצת בקורדינטות

X+a, Y+b

כאשר אחד מבין

a,b

הוא פלוס או מינוס אחד והשני הוא פלוס או מינוס שתים.


   Report 
   04-19-2008, 14:01
yoav zilberman is not online. Last active: 3/17/2009 12:02:20 AM yoav zilberman

Top 10 Posts
Joined on 04-08-2008
Posts 53
Re: חידת הפרשים מתוכנית ג'יגה בית
8?
   Report 
   04-19-2008, 14:33
lhason is not online. Last active: 4/23/2008 10:15:27 PM lhason

Top 50 Posts
Joined on 04-19-2008
Posts 7
Re: חידת הפרשים מתוכנית ג'יגה בית

אני גם אלך על ניחוש פרוע שזה שמונה.

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


   Report 
   04-20-2008, 12:32
yoav zilberman is not online. Last active: 3/17/2009 12:02:20 AM yoav zilberman

Top 10 Posts
Joined on 04-08-2008
Posts 53
Re: חידת הפרשים מתוכנית ג'יגה בית

מתנצל, פתרון שרשמתי אינו נכון.

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

יואב


   Report 
   04-21-2008, 3:26
yoav zilberman is not online. Last active: 3/17/2009 12:02:20 AM yoav zilberman

Top 10 Posts
Joined on 04-08-2008
Posts 53
Re: חידת הפרשים מתוכנית ג'יגה בית

התשובה היא 18 .

האם זה נכון?

להלן תוכנית המחשב שמחשבת את המבוקש:

import java.util.*;
public class chess
{
 static Scanner yoav=new Scanner(System.in);
 static boolean peula(char[][]matrix)
 {
  int mone=0;
  for(int i=0;i<=matrix.length-1;i++)
  {
   for(int j=0;j<=matrixIdea [I].length-1;j++)
   {
    if(matrixIdea [I][j]!=' ')
    {
     mone++;
    }
   }
  }
  if(mone==Math.pow(matrix.length,2))
    {
     return true;
    }
  else
  {
   return false;
  }
 }
 public static void main(String[]args)
 {
  int mone=9,currentmone=0;
  int x=0;
  char[][]matrix=new charMusic [8]Music [8];
  for(int i=0;i<=7;i++)
  {
   for(int j=0;j<=7;j++)
   {
    matrixIdea [I][j]=' ';
   }
  }
  while(peula(matrix)==false)
  {
   for(int i=0;i<=7;i++)
   {
    for(int j=0;j<=7;j++)
    {
     if(matrixIdea [I][j]!='a')
     {
      if(matrixIdea [I][j]==' ')
      {
       currentmone++;
      }
      if(j-1>=0 && i-2>=0 )
      {
       if(matrix[i-2][j-1]==' ')
       {
        currentmone++;
       }
      }
      if(j+1<=7 && i-2>=0)
      {
       if(matrix[i-2][j+1]==' ')
       {
        currentmone++;
       }
      }
      if(i+2<=7 && j-1>=0)
      {
       if(matrix[i+2][j-1]==' ')
       {
        currentmone++;
       }
      }
      if(i+2<=7 && j+1<=7)
      {
       if(matrix[i+2][j+1]==' ')
       {
        currentmone++;
       }
      }
      if(j+2<=7 && i-1>=0)
      {
       if(matrix[i-1][j+2]==' ')
       {
        currentmone++;
       }
      }
      if(j-2>=0 && i-1>=0)
      {
       if(matrix[i-1][j-2]==' ')
       {
        currentmone++;
       }
      }
      if(j+2<=7 && i+1<=7)
      {
       if(matrix[i+1][j+2]==' ')
       {
        currentmone++;
       }
      }
      if(j-2>=0 && i+1<=7)
      {
       if(matrix[i+1][j-2]==' ')
       {
        currentmone++;
       }
      }
      
     }
     if(currentmone==mone)
     {
      matrixIdea [I][j]='a';
      if(i+1<=7 && j-2>=0)
       matrix[i+1][j-2]='*';
      if(i+1<=0 && j+2<=7)
       matrix[i+1][j+2]='*';
      if(i-1>=0 && j-2>=0)
       matrix[i-1][j-2]='*';
      if(i-1>=0 && j+2<=7)
       matrix[i-1][j+2]='*';
      if(i+2<=7 && j+1<=7)
       matrix[i+2][j+1]='*';
      if(i+2<=7 && j-1>=0)
       matrix[i+2][j-1]='*';
      if(i-2>=0 && j+1<=7)
       matrix[i-2][j+1]='*';
      x++;
     }
     currentmone=0;
    }
    
   }
   mone--;
    
  }
  
  System.out.println(x);
 }
}


   Report 
   04-21-2008, 5:28
yoav zilberman is not online. Last active: 3/17/2009 12:02:20 AM yoav zilberman

Top 10 Posts
Joined on 04-08-2008
Posts 53
Re: חידת הפרשים מתוכנית ג'יגה בית
טעות הקלדה, התשובה היא 16
   Report 
   04-21-2008, 5:32
CGX is not online. Last active: 5/13/2012 10:41:23 PM CGX

Top 10 Posts
Joined on 11-13-2005
Posts 252
Re: חידת הפרשים מתוכנית ג'יגה בית
תוכנית נחמדה, אבל היא עובדת באופן חמדני - שמה פרש במשבצת פנויה - אפשר לעשות זאת טוב יותר: פחות מ18 פרשים יכולים לכסות את כל הלוח.
   Report 
   04-21-2008, 6:54
maxim k is not online. Last active: 4/21/2008 8:24:19 PM maxim k

Top 25 Posts
Joined on 04-18-2008
Posts 15
Re: חידת הפרשים מתוכנית ג'יגה בית

אממ החסם המינימלי הטריוויאלי הוא 9, אבל אני לא מצאתי משהו בסביבה...מצאתי פתרון יפה (ויזואלית) עם 16:

oooooooo

oooooooo

oxxooxxo

ooxxxxoo

ooxxxxoo

oxxooxxo

oooooooo

oooooooo


   Report 
   04-21-2008, 7:02
maxim k is not online. Last active: 4/21/2008 8:24:19 PM maxim k

Top 25 Posts
Joined on 04-18-2008
Posts 15
Re: חידת הפרשים מתוכנית ג'יגה בית

מצאתי עם  9

oooooooo

ooxooooo

ooxxoxxo

oooooxoo

ooxooooo

oxxoxxoo

oooooxoo

oooooooo

 

לא ייתכן פיתרון טוב יותר, מכיוון שכדי לתקוף את הפינות ארבע פרשים צריכים להיות במרחק שורה בדיוק מהקצה, ולכן הם מאבדים 2 משבצות שבהם יכלו לתקוף

כלומר 8 משבצות סה"F

אז דרוש עוד פרש

כלומר סה"F 9 פרשים

חידה יפה מאוד, גם הפיתרון הזה סיטרי ויפה (כמצופה) כשמציירים את זה נורמלית


   Report 
   04-21-2008, 7:05
maxim k is not online. Last active: 4/21/2008 8:24:19 PM maxim k

Top 25 Posts
Joined on 04-18-2008
Posts 15
Re: חידת הפרשים מתוכנית ג'יגה בית
השמחה מוקדמת...פספסתי מספר משבצות :D
   Report 
   04-21-2008, 7:11
maxim k is not online. Last active: 4/21/2008 8:24:19 PM maxim k

Top 25 Posts
Joined on 04-18-2008
Posts 15
Re: חידת הפרשים מתוכנית ג'יגה בית

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

סה"כ 13...אבל זה יותר מדי, לדעתי. אני בטוח שיש פיתרון ב9


   Report 
   04-21-2008, 7:15
maxim k is not online. Last active: 4/21/2008 8:24:19 PM maxim k

Top 25 Posts
Joined on 04-18-2008
Posts 15
Re: חידת הפרשים מתוכנית ג'יגה בית

אה

אמרת שהוא מאיים גם על המשבצת שבה הוא נמצא?

אם כך הפיתרון הקודם שלי נכון

ב-9

 


   Report 
   04-21-2008, 7:21
yoav zilberman is not online. Last active: 3/17/2009 12:02:20 AM yoav zilberman

Top 10 Posts
Joined on 04-08-2008
Posts 53
Re: חידת הפרשים מתוכנית ג'יגה בית
הפלט של התוכנית הוא 16 ולא 18 הייתה טעות הקלדה......
   Report 
   04-21-2008, 7:28
yoav zilberman is not online. Last active: 3/17/2009 12:02:20 AM yoav zilberman

Top 10 Posts
Joined on 04-08-2008
Posts 53
Re: חידת הפרשים מתוכנית ג'יגה בית
בפתרון שלך יש 12 פרשים, לא 9!
   Report 
   04-21-2008, 8:08
maxim k is not online. Last active: 4/21/2008 8:24:19 PM maxim k

Top 25 Posts
Joined on 04-18-2008
Posts 15
Surprise [:O] Re: חידת הפרשים מתוכנית ג'יגה בית

אני לא יודע לספור :O


   Report 
קודגורו » פורומים » חידות » חידת הפרשים מתוכנית ג'יגה בית

Powered by Community Server, by Telligent Systems