• hola
  • ע"י: בחיפוש אחר האתגר הבא
    שלום, האם מישהוא עבר את המשימה הראשונה ויודע מה המשימה השניה ? בתודה מראש
  • לפני 9 שנים
    ע"י: 1_אורח_כללי
    חלק ראשון - 15-20 דק Assume most recent language standard are available ES5, C11, C++11 We expect good performance If missing more requirements details, just make reasonable assumptions of your own Solution must be simple and compact No defensive coding, no comments, no unrequested features Only one file 10-20 lines of code Work only inside Google Docs no external editor/IDE/debugger, no copy-paste to/from such an editor We must see the flow of how you write the code you have 5 minutes 5 JS, C/C++/C#/Python 10 minutes, 15, 20 Implement function verify(text) which verifies whether parentheses within text are correctly nested You need to consider three kinds (), , <> Examples: verify("a(b)") -> 1 verify("") -> 1 verify("") -> 0 verify(")") -> 0 verify("><") -> 0 verify("z(<a>)") -> 1 verify("") -> 1 חלק שני - 30 דק Problem =========== Simplify the implementation below as much as you can. Even better if you can also improve performance as part of the simplification! FYI: This code is over 35 lines and over 300 tokens, but it can be written in 5 lines and in less than 60 tokens. function func(s, a, b) { var match_empty=/^$/ ; if (s.match(match_empty)) { return -1; } else { var i=0; var aIndex=-1; var bIndex=-1; while ((aIndex==-1) && (bIndex==-1) && (i<s.length)) { if (s.substring(i, i+1) == a) aIndex=i; if (s.substring(i, i+1) == b) bIndex=i; i++; } if (aIndex != -1) { if (bIndex == -1) return aIndex; else return Min(aIndex, bIndex); } else { if (bIndex != -1) return bIndex; else return -1; } } }; חלק 3 - 5 דק לממש את הפונקציה strcmp case sensitive
  • אסף התחיל לחפש עבודה כשהוא עדיין מתכנן את החזרה לישראל מחו"ל, למרות ידע וניסיון רחב, הוא נתקל במחסומים לא הגיוניים כשניסה לחפש עצמאית. חיפוש עבודה היא משימה, שעדיף לתת למישהו אחר לעשות עבורכם, במיוחד כשאין לכם את הפניות לעשות את זה לבד, במיוחד במיוחד כשאתם מודעים לערך שלכם בשוק, אבל לא מרגישים אותו בפועל.
    לבדיקת התאמה
  • לפני 9 שנים
    ע"י: 1_אורח_כללי
    מדריך לפיתרון הראיון השני בHOLA (יצירת Library בJS) http://www.mikedoesweb.com/2012/creatin ... t-library/
  • לפני 9 שנים
    ע"י: admin
    ראיון שני בהולה בסקייפ‎: נתנו משימה לממש פונקציונאליות של jquery ב javascript להלן המשימה: the task is to implement a tiny subset of jQuery functionality class selector html() selector. //javascript var $ = .. // write you soultion here //html <span class='replaceme'>A</span> <span class='replaceme'>B</span> <script> $('.replaceme').html('Replacement'); </scirpt> //expected output ReplacementReplacement * השחזור נשלח אלינו במייל. עם המודל של ג'ובהאנט מגיעים לפי 2 ראיונות עבודה ב-1/2 מהזמן! לבדיקת התאמה שלחו קו"ח
  • לפני 9 שנים
    ע"י: 1_אורח_כללי
    פתרון רקורסיבי ללא צורך במכסנית כנראה התכוונו לזה public static String chechBraket(String s) { if(s.isEmpty() || s.charAt(0) == ')'){ return s; } else if(s.charAt(0) == '('){ String c = chechBraket(s.substring(1)); if(c.isEmpty()){ return s; } else if(c.charAt(0) == ')'){ return chechBraket(c.substring(1)); } else{ return s.substring(1); } } else{ return chechBraket(s.substring(1)); } } זה פתרון יפה, אבל תופס רק למקרה של סוגריים מסוג אחד בלבד, עגולים: (). לא הצלחתי לחשוב על דרך להתאים את הפתרון הרקורסיבי לסוגים מרובים של סוגריים. למי שצריך, זה הפתרון שלי (לא רקורסיבי, אבל כולל את כל סוגי הסוגריים כולל המיוחדים שסוגר פותח הוא כמו זה שסוגר): import com.sun.org.apache.xpath.internal.operations.Bool; import java.util.HashMap; import java.util.Scanner; import java.util.Stack; /** * Created by mor on 17/11/2015. */ public class test { private static Character[] openingBrackets = { '{', '[', '<', '(' }; private static Character[] closingBrackets = { '}', ']', '>', ')' }; private static Character[] specialBrackets = { '|', '^' }; public static boolean checkBrackets(String s) { HashMap<Character,Character> open2closeBrackets = new HashMap<>(); for(int i=0;i<openingBrackets.length;++i) open2closeBrackets.put(openingBrackets[i], closingBrackets[i]); HashMap<Character,Boolean> wasSpecialBracket = new HashMap<>(); for(int i=0;i<specialBrackets.length;++i) wasSpecialBracket.put(specialBrackets[i], false); Character top; Character curCh; Stack<Character> charStack = new Stack<>(); for(int i=0;i<s.length();++i) { curCh = s.charAt(i); if(isOpeningBracket(curCh)) charStack.push(curCh); else if(isClosingBracket(curCh)) { if(charStack.isEmpty()) return false; top = charStack.pop(); if(curCh!=open2closeBrackets.get(top)) return false; } else if(isSpecialBracket(curCh)) { if(!wasSpecialBracket.get(curCh)) { charStack.push(curCh); wasSpecialBracket.put(curCh, true); } else { // A special bracket of this kind has been pushed top = charStack.pop(); wasSpecialBracket.put(top, false); if(curCh!=top) return false; } } } // More opening brackets than closing ones if(!charStack.isEmpty()) return false; return true; } private static boolean isOpeningBracket(Character c) { for(int j=0;j<openingBrackets.length;++j) { if(c.equals(openingBrackets[j])) { return true; } } return false; } private static boolean isClosingBracket(Character c) { for(int j=0;j<closingBrackets.length;++j) { if(c.equals(closingBrackets[j])) { return true; } } return false; } private static boolean isSpecialBracket(Character c) { for(int j=0;j<specialBrackets.length;++j) { if(c.equals(specialBrackets[j])) { return true; } } return false; } public static void main(String[] args) { System.out.println("Enter a brackets string:"); Scanner scanner = new Scanner(System.in); String s = scanner.next(); boolean isOK = test.checkBrackets(s); System.out.println("The string:"+s+ "is:"+isOK); } } לפי כל הבדיקות זה נכון אבל לא יודע אם יקבלו את זה או לא כי עוד לא היה לי הראיון..בהצלחה לי ולכולם
  • לפני 9 שנים
    ע"י: אדם פשוט
    שלום, אשמח לדעת האם מישהו פה עבר את המבחן השלישי? זה שעושים דרך הסקייפ. יש לי אותו מחר ואשמח לעזרה מה שואלים שם? איזו שאלת תכנות? זה יעזור לי מאוד. בתודה מראש!
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    בבקשה אזרה אם ראיון 3 בחברתhola
  • לפני 10 שנים
    ע"י: אדם פשוט
    בבקשה אזרה אם ראיון 3 בחברתhola שלום נועם, אשמח לדעת בבקשה מה שאלו אותך בראיון השלישי. כי לפי מה שאני מבין הגעת אליו. זה יעזור לי מאוד. בתודה מראש!
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    מה דרך לפתרון נכון עבור שאלה ראשונה? ומה בראיון שני?
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    אז יש מי שהגיע לראיון שני????
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    אני גם אשמח לדעת מה עוברים בראיון השני. ובבקשה, אם מישהו עומד לעבור את הראיון השני בקרוב אז בבקשה שיכנס לכאן וישתף.. זה יעזור לאלה שיעברו את הראיון אחר כך!
  • לפני 10 שנים
    ע"י: הדר123
    היי, אשמח לדעת מה שואלים בראיון השני לחברת hola? תודה
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    ראיון טלפוני צריך לפתור משהו כתוב הנייל?
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    האם מישהו יודע מה הפתרון למבחן הראשון? ומה המבחן השני?
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    השאלה הייתה: https://www.dropbox.com/s/fyh7x4gls2drt ... 3.jpg?dl=0 זה הפתרון שנתתי (הוא כולל כמה באגים): https://www.dropbox.com/s/ie7h9jgxrolxt ... 7.jpg?dl=0 וקיבלתי הזדמנות לתקן את הקוד כאשר ההערות הן כאלה: https://www.dropbox.com/s/9m51x23k2pu1f ... 2.jpg?dl=0 הקוד הסופי שהגשתי בלי התייחסות להערה השנייה: bool check(std::string text) { std::stack <char> help_stack; size_t index = 0; while (std::string::npos != (index = text.find_first_of("{}[]()", index))) { switch(text[index]) { case '{': help_stack.push('}'); break; case '(': help_stack.push(')'); break; case '[': help_stack.push(']'); break; case '}': case ')': case ']': if (help_stack.empty()) { return false; } if (text[index] != help_stack.top()) { return false; } help_stack.pop(); } index += 1; } if (!help_stack.empty()) { return false; } return true; } התשובה הייתה Unfortunately the answer you gave is not the answer we are looking for. בהצלחה לכולם!
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    ועדיין אף אחד לא ענה, יש מישהו שהגיע לראיון השני ויכול לספר מה היה בו?
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    פתרון רקורסיבי ללא צורך במכסנית כנראה התכוונו לזה public static String chechBraket(String s) { if(s.isEmpty() || s.charAt(0) == ')'){ return s; } else if(s.charAt(0) == '('){ String c = chechBraket(s.substring(1)); if(c.isEmpty()){ return s; } else if(c.charAt(0) == ')'){ return chechBraket(c.substring(1)); } else{ return s.substring(1); } } else{ return chechBraket(s.substring(1)); } }
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    אשמח לדעת מה הייתה השאלה הראשונה? תודה.
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    אשמח לדעת גם מה יש בראיון השני.. אם משהו בעולם בכלל מגיע לשם
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    כפי שציינתי לא עברתי את השלב הראשון. אבל מצטרף לשאלה שלך,אשמח לדעת מה ישאלו אותך כדי לעשות את זה לבד למטרות תרגול. מתי הראיון שלך?, ובהצלחה. נ.ב. אם השלב השני הוא כמו בראשון (און ליין) אז אתה תוכל להעתיק את המטלה מהgoogle docs.
  • לפני 10 שנים
    ע"י: אביגדורצ'יק
    מישהו היה בראיון השני?
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    אני גם עשיתי מחסנית אבל טעיתי בבדיקה ולכן הקוד לא עבד ולא עברתי. אבל אשמח לדעת מה שואלים בראיון השני לצורך תרגול לראיונות הבאים
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    הדרך שתארת היא הדרך לעבוד עם מחסנית במקרה הזה... וכך עשיתי. אגב בג'אווה הקוד נראה הרבה יותר קצר.. ועדיין בחרו שלא להעביר. בכל מקרה שיהיה לך המון בהצלחה. הבנתי שיש להם תנאים טובים!
  • לפני 10 שנים
    ע"י: בחיפוש אחר האתגר הבא
    את המבחן על המחסנית עברתי, בקוד ב-C (מועמדת למשרה ב-C), האמת שלא שמרתי את הקוד. אבל באופן עקרוני נראה לי שצריך לדחוף את הסוגר המשלים כשמזהים נגיד ), לדחוף למחסנית (, ואז כשמוציאים מהמחסנית מפשט את הבדיקות ,ישר משווים. פתרון מהרשת בC++ bool bracketsMatch(std::istream &in) { //std::map<int> h; std::stack<char> expectedDelimiters; int lineNum = 0; std::string line; while (std::getline(in, line)) { lineNum++; size_t pos = 0; while (std::string::npos != (pos = line.find_first_of("(){}", pos))) { int colNum = pos + 1; switch (line) { case '(': expectedDelimiters.push(')'); break; case '{': expectedDelimiters.push('}'); break; case ''); break; case ']': case '}': case ')': if (expectedDelimiters.empty()) { std::cout << "Mismatched " << line << " at line " << lineNum << ", col " << colNum << std::endl; return false; } if (line != expectedDelimiters.top()) { std::cout << "Expected " << expectedDelimiters.top() << ", found " << line << " at line " << lineNum << ", col " << colNum << std::endl; return false; } expectedDelimiters.pop(); } pos = colNum; } } // Should check for a possible input error here, but I didn't bother. if (!expectedDelimiters.empty()) { std::cout << "Expected " << expectedDelimiters.top() << " at end of file" << std::endl; return false; } return true; }
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    את המבחן על המחסנית עברתי, בקוד ב-C (מועמדת למשרה ב-C), האמת שלא שמרתי את הקוד. אבל באופן עקרוני נראה לי שצריך לדחוף את הסוגר המשלים כשמזהים נגיד ), לדחוף למחסנית (, ואז כשמוציאים מהמחסנית מפשט את הבדיקות ,ישר משווים. פתרון מהרשת בC++ bool bracketsMatch(std::istream &in) { //std::map<int> h; std::stack<char> expectedDelimiters; int lineNum = 0; std::string line; while (std::getline(in, line)) { lineNum++; size_t pos = 0; while (std::string::npos != (pos = line.find_first_of("(){}", pos))) { int colNum = pos + 1; switch (line) { case '(': expectedDelimiters.push(')'); break; case '{': expectedDelimiters.push('}'); break; case ''); break; case ']': case '}': case ')': if (expectedDelimiters.empty()) { std::cout << "Mismatched " << line << " at line " << lineNum << ", col " << colNum << std::endl; return false; } if (line != expectedDelimiters.top()) { std::cout << "Expected " << expectedDelimiters.top() << ", found " << line << " at line " << lineNum << ", col " << colNum << std::endl; return false; } expectedDelimiters.pop(); } pos = colNum; } } // Should check for a possible input error here, but I didn't bother. if (!expectedDelimiters.empty()) { std::cout << "Expected " << expectedDelimiters.top() << " at end of file" << std::endl; return false; } return true; } תראה גם כאשר מכניסים את הקוד הנ"ל ל-Editor ומבצעים אינדנטציות , זה בעליל לא קריא , אפשר לכתוב את זה קצר יותר וגם יעיל יותר (יש גרסה ללא מחסנית).
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    ה cto שם חי בסרט. בצעתי את המשימה עם מחסנית בג'אווה.. מתודה ממש פשוטה. והם חזרו אלי יום למחרת וביקשו שאעשה אותה יותר פשוטה. לא ירדתי לסוף דעתו של הבחור.. רק הבנתי שאם הוא פוסל מישהו במבחן טלפוני למרות שהפתרון תקין (בדקתי), אני לא מעוניין לראות את המבחן השני בהצלחה. נ.ב במידה ותעבור אשמח שתפרסם את התשובה שלך למשימה הראשונה, להבין מה הבחור רצה..
  • לפני 10 שנים
    ע"י: 1_אורח_כללי
    חברים חברה כמו Hola זה אנשים שמתותקים מימיציוד , הם נתנו איזה מסימה לכתוב בC לפני שנתיים אם פרס 1000$ אנשים אם 20שנות נסיון עשו את עבודה וזה היה לא טוב. לי אישית אמרו שאני לא עמדתי בסטנדרט שלהם , מדובר בסגירת סוגר באותה שורה או שורה מתחת , על זה לדריהם אני נפסלתי . לא מבין את השיקולים של אנשים פשוט ביזיון וכול מישיכול חייב להתנתק מיחברות היסוג זה . ובככל כל מישעושה מבחנים בצורה כול שהיא במקום ראיון עבודה המקובל, פשוט איינו רציני , אני רואה זות כבר 107שנה שאני בתחום וכול אות אנשים יהמינו בחלומות חברות מגייסות ימשיכו לעשות צחוק מימועמדים. שלום, האם מישהוא עבר את המשימה הראשונה ויודע מה המשימה השניה ? בתודה מראש