{
  "app": {
    "name": "Mokabla",
    "url": "https://www.mokabla.com",
    "description": "Real interview questions from companies in Egypt, organised by company. Access is sold per company for 30 days."
  },
  "page": {
    "kind": "question",
    "title": "Question · two-problem-coding-screen",
    "humanPath": "/en/c/meta/two-problem-coding-screen",
    "humanOnly": false
  },
  "identity": {
    "class": "declared",
    "agent": "ClaudeBot",
    "operator": "Anthropic",
    "verified": false,
    "reason": "The user agent is ClaudeBot (Anthropic), which identifies itself as an AI agent.",
    "signals": [
      "Known agent user agent"
    ],
    "claimable": false
  },
  "state": {
    "question": {
      "slug": "two-problem-coding-screen",
      "title": "Two Problem Coding Screen",
      "difficulty": "medium",
      "tags": [
        "coding",
        "phone",
        "swe"
      ],
      "is_free": true,
      "locked": false,
      "frequency": 1,
      "last_reported_at": "2026-01-12T16:38:19.924833Z",
      "url": "https://www.mokabla.com/en/c/meta/two-problem-coding-screen",
      "agent": {
        "page": "https://www.mokabla.com/agent/en/c/meta/two-problem-coding-screen",
        "question": "https://www.mokabla.com/agent/_call/get_question?company=meta&question=two-problem-coding-screen"
      },
      "company": {
        "slug": "meta",
        "name_en": "Meta"
      },
      "body_md": "## What they ask\nThere is no local engineering office, so the whole loop runs remotely with a recruiter and interviewers in another region. After the recruiter call comes the technical screen: 45 minutes in CoderPad with the run button switched off, about 35 minutes of actual coding, and two problems is the norm. The interviewer expects a working solution to both, so the pace is fast.\n\nThe problems come from the well known company tagged lists. One from a 2025 loop (the screen and the onsite coding rounds draw from the same pool), rewritten:\n\n> Given a string `s` of letters and digits, return every string you can make by independently choosing upper or lower case for each letter. Digits stay as they are. Order does not matter.\n\nThe second slot in that loop was a tree problem (see the subtree average question), and other candidates report array and hashing questions, interval merging and k closest points.\n\n### Examples\n- `\"a1b\"` returns `[\"a1b\", \"A1b\", \"a1B\", \"A1B\"]`.\n- `\"123\"` returns `[\"123\"]`.\n\n### Constraints\n- `1 <= len(s) <= 12`, so the output can have up to `4096` strings.\n\n## What they look for\n- Clarifying the question in under a minute, then stating the approach before writing it.\n- A clean backtracking (or iterative doubling) solution with `O(2^L * n)` time stated, where `L` is the number of letters.\n- Verification by hand: because nothing runs, you pick a small input, walk through your code line by line, and catch your own bugs. A candidate who finishes both problems but never traces them is usually a no.\n- Four signals are graded: coding, problem solving, communication and verification. Speed matters because the second problem is where most of the signal comes from.\n\nDynamic programming is rarely asked at the screen; arrays, strings, hashing, trees and graphs are the usual territory.",
      "follow_ups_md": "- Return the variants in lexicographic order without sorting the output.\n- Only letters at even positions may change case.\n- `len(s)` is 40 and you must return the `k`-th variant only."
    },
    "paid": false,
    "access": "Question bodies are paid content: a person buys 30 days of access per company (200 EGP or 200 points) in the human app. Agents get titles, tags and difficulty; bodies only for free questions."
  },
  "actions": [
    {
      "name": "get_question",
      "description": "One question with its body. Bodies are paid content unless the question is free.",
      "permission": "allow",
      "sideEffect": "read",
      "input": {
        "company": "string",
        "question": "string"
      },
      "href": "https://www.mokabla.com/agent/_call/get_question?company=meta&question=two-problem-coding-screen",
      "ready": true,
      "missing": [],
      "humanPath": "https://www.mokabla.com/en/pricing"
    },
    {
      "name": "list_questions",
      "description": "The questions reported at a company: titles, tags, difficulty, whether each is free or paid.",
      "permission": "allow",
      "sideEffect": "read",
      "input": {
        "company": "string",
        "page": "number?"
      },
      "href": "https://www.mokabla.com/agent/_call/list_questions?company=meta",
      "ready": true,
      "missing": []
    },
    {
      "name": "buy_access",
      "description": "Buy 30 days of access to a company.",
      "permission": "block",
      "reason": "This action is for people only",
      "ruleId": "R1",
      "sideEffect": "payment",
      "input": {
        "company": "string"
      },
      "href": "https://www.mokabla.com/agent/_call/buy_access?company=meta",
      "ready": true,
      "missing": [],
      "humanPath": "https://www.mokabla.com/en/pricing"
    },
    {
      "name": "post_comment",
      "description": "Comment on a question.",
      "permission": "block",
      "reason": "This action is for people only",
      "ruleId": "R1",
      "sideEffect": "write",
      "input": {
        "question": "string",
        "text": "string"
      },
      "href": "https://www.mokabla.com/agent/_call/post_comment?question=two-problem-coding-screen",
      "ready": false,
      "missing": [
        "text"
      ],
      "humanPath": "https://www.mokabla.com/en/companies"
    }
  ],
  "navigate": [
    {
      "label": "This question, as data (free questions only)",
      "href": "https://www.mokabla.com/agent/_call/get_question?company=meta&question=two-problem-coding-screen"
    },
    {
      "label": "All questions at this company",
      "href": "https://www.mokabla.com/agent/_call/list_questions?company=meta"
    },
    {
      "label": "The company page",
      "href": "https://www.mokabla.com/agent/en/c/meta"
    },
    {
      "label": "Two Problem Coding Screen · page",
      "href": "https://www.mokabla.com/agent/en/c/meta/two-problem-coding-screen"
    }
  ],
  "notices": [
    {
      "severity": "info",
      "message": "This classification is final for the session: it came from a strong signal, not a guess. The human pages are not served to agents."
    },
    {
      "severity": "info",
      "message": "Unverified agents are read-only. Signed requests (Web Bot Auth) are the path to write access."
    }
  ],
  "meta": {
    "requestId": "ag_49d3d8fb7766",
    "policyVersion": "mokabla-2026-11-03",
    "generatedAt": "2026-11-03T17:37:52.429Z",
    "jsonUrl": "https://www.mokabla.com/agent/en/c/meta/two-problem-coding-screen?format=json",
    "manifestUrl": "https://www.mokabla.com/.well-known/agentgate.json",
    "humanUrl": "https://www.mokabla.com/en/c/meta/two-problem-coding-screen",
    "humanClaimUrl": "https://www.mokabla.com/agent/_claim/human?to=%2Fen%2Fc%2Fmeta%2Ftwo-problem-coding-screen"
  }
}