This year's fall recruitment JPMorgan Chase OA has been out, the question type continues the consistent style: thinking logic + programming implementation, not particularly "fancy", but if you do not brush to similar topics, it is easy to get stuck in the boundary conditions. Below to share with you two questions, are the first time our students feedback.
JPMorgan Chase Recruitment / Submission Process (Official & Experience Summary)
Official Processes and Policies () JPMorgan Careers "How We Hire")
- On the "How We Hire" page of JPM Chase's official website, you can see the framework of its hiring process: submit an application → interview → hire.
- In the FAQ section, there is information about the status of the request, withdrawal of the request, saving of drafts, and whether it is possible to change a submitted request.
- If a position is indicated as "assessment required" (Assessments / online assessment), you will be notified of the need for an assessment during the application process.
Signal Filtering
Signal filtering based on frequency is essential to minimize noise outside the desired frequency range. frequencies within the permissible range of all filters can pass through.
For instance, three filters with frequency ranges (10, 17), (13, 15), and (13, 17) will only allow frequencies between 13 and 15 to pass through, as this is the only overlapping range.
Given n signal frequencies and a sequence of m filters with specified frequency ranges from x to y (inclusive), determine how many signals will pass through all the filters. There will be a single common range where all filters overlap.
Example.
frequencies = [8, 15, 14, 16]
filtersRanges = [[10, 17], [13, ...]]
The range that all of the filters overlap is from ... to 15, inclusive. the 2 frequencies that will pass through
Idea:
Typical interval intersection problem. All filters take a maximum lower bound L = max(x) and a minimum upper bound R = min(y), and end up keeping only the frequencies in the interval [L, R]. Just iterate through the frequencies statistic. Time complexity O(n+m).
Two Consignments
A shop has n types of items, where the quantity of the i-th item is denoted by quantity[i]. These items are to be shipped in two consignments.
- The first consignment contains items 1, 2, ..., j
- The second consignment contains the remaining items j+1, ..., n
The value of j can be chosen such that 1 ≤ j < n (1-based indexing).
The shopkeeper wants to make the total quantities in both consignments equal. To achieve this, they can increase or decrease the quantity of any item type To achieve this, they can increase or decrease the quantity of any item type by 1, any number of times.Find the minimum number of operations required to make the quantities of both consignments equal if the items are split optimally.
Example.
n = 3
quantity = [1, 4, 4]
The optimal approach is to increase quantity = [1, 4, 5].
Partition at j = 2 to get consignments [1, 4] and [5].
The answer is 1.
Thoughts:
This problem may seem complicated, but it is really about finding an optimum among all the split points j. For each split point, the sum of the left and right sides are A and B, respectively. If the sum of one of the two sides is large enough (≥ the number of categories), just adjusting the difference will do the trick, and the operand is |A-B|.
But if the sum of both sides is too small (less than the number of categories on that side), the whole must be lifted to the minimum requirement, at which point the formula becomes 2*Lmin - (A+B). Enumerate all j and just take the minimum. Time complexity O(n).
Summarize
These two questions, one on interval intersection and the other on array partitioning and balancing, appear to be independent, but in fact both examine the ability to handle boundary conditions:
- The Filter question is easy to miscalculate if you don't pay attention to the inclusive (including the endpoints).
- The Consignment question misses the special case if it ignores that the number of each category must be ≥1.
Many students usually have no problem brushing up on their thinking, but once they get stuck in OA with this kind of boundary, they tend to time out or write crashes.
It's not just brushing up, the real bottom line comes from here
we programhelp The team has a lot of hands-on experience with this type of OA for large manufacturers:
- Remote No Trace Assist: Help you write 100% over-tested code without leaving a trace;
- Real-time voice assistance: When you get stuck on a question, we can promptly remind you of the boundary points you should be aware of;
- VO/Interview Full Process Coaching: It's not limited to OA, but also helps you stabilize subsequent technicals.
A number of students have already passed JPMorgan's OA and entered the subsequent interviews with our help.
If you are also preparing for this year's fall recruiting and don't want to get caught up in OA, feel free to contact us.