פופולרי עכשיו: תמונה מנופי הארץ

עקבו אחרי חורימבה

Twitter RSS חורים גם באייפון

עדכונים במייל

פוסטים אחרונים מהבלוג

חברים ממליצים

ויראלי

default icon

אתגר למפתחים: פצחו את המבחן הבא וזכו ב-200$ בפייפאל

אהבתם את הפוסט?

2010-07-27_154427

איתור עובדים מתאימים היא משימה לא פשוטה לעתים לחברות היי טק ישראליות, שמחפשות מפתחים מוכשרים בנרות. באוטודסק, מפתחת תוכנות 2D/3D כמו AutoCAD, Maya ו-3ds Max, מחפשים תוכניתנים שמוכנים להתמודד וללמוד מגוון סביבות – Java, ActionScript, C++, Delphi, ושיהיו גם אנשים שהטכנולוגיה והגיקיות היא בנשמה שלהם.

במקום זאת, מרכז המחקר והפיתוח החדש של Autodesk בישראל (המבוסס על עובדי VisualTao, שהוקמה ב-2007), מציע באמצעות חורימבה 200 דולרים בזיכוי חשבון הפייפאל שלכם למפתח שיפצח את המבחן הבא.

מפתחים, שימו לב: האתגר מיועד לכולכם: בין אם אתם מעוניינים לעבוד ב-Autodesk או סתם רוצים לבחון את הידע שלכם. היכנסו לקישור, צרפו קורות חיים (אם זה רלוונטי עבורכם) וכתובת אימייל ובדקו אם אתם ראויים. Autodesk תבחר את המשתמש שפתר את המבחן בצורה הטובה ביותר ותעניק לו 200$ בחשבון הפייפאל שלו. שם הזוכה יתפרסם כאן בעוד שבוע.

עדכון: המנצח הוא שי שלום

הפתרון שלו:

Answer 1: No. There is an off-by-one error in the 3rd line. it should be:
if (str[index] != str[str.length() - index - 1])
The shown code will also possibly cause an access violation in the first iteration when trying to access str[str.length()] which is outside the length of the string.

Answer 2: computes the GCD (Greatest Common Divisor) using the Euclidean algorithm.

Answer 3a: c = s.next();

if (a + b != c)
return false;
a = b;
b = c;

Answer 3b: If the first two items don’t have to be 0 and 1 then this will cause an infinite loop:
class InfStream : public IStream {
public:
virtual bool hasNext() { return true; }
virtual int next() { return 0; }
};
If they do then this is the answer:
class Inf2Stream : public IStream {
public:
Inf2Stream() : m_a(0), m_b(1), m_start(0) {}
virtual bool hasNext() { return true; }
virtual int next() {
if (m_start == 0)
{
++m_start;
return 0;
}
if (m_start == 1)
{
++m_start;
return 1;
}
int c = m_a + m_b;
m_a = m_b;
m_b = c;
return c;
}
int m_a, m_b, m_start;
};
This works because when the integer overflows it wraps around to negative values. The relation of c = a + b remains true modulo 0x7FFFFFF (assuming 32 bit int) .

[ad#banner468x60]

>

"הרשת מתחילה לחשוב", כנס איגוד האינטרנט. הנחה לקוראי חורימבה בטלפון 03-9727406. קוד הנחה 875900

תגיות: , , , ,


מאת: מערכת חורים ברשת

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

  1. פינג: Tweets that mention אתגר למפתחים: פצחו את המבחן הבא וזכו ב-200$ בפייפאל | חורים ברשת -- Topsy.com

  2. I’m impressed! You’ve managed the almost iopsmsible.

Performance Optimization WordPress Plugins by W3 EDGE
Google Analytics Alternative