• + 0 comments
    public static int workbook(int n, int k, List<Integer> arr) {
    // Write your code here
         Map<Integer, List<Integer>> bookMap = new HashMap<>();
        int pageNr = 1;
    
        for (int i = 0; i < n; i++) {
            List<Integer> problemsPerPage = new ArrayList<>();
            for (int j = 0; j < arr.get(i); j++) {
                if (problemsPerPage.size() == k) {
                    bookMap.put(pageNr, problemsPerPage);
                    pageNr++;
                    problemsPerPage = new ArrayList<>();
                }
                problemsPerPage.add(j + 1);
            }
            bookMap.put(pageNr, problemsPerPage);
            pageNr++;
        }
        AtomicInteger specialProblems = new AtomicInteger();
        bookMap.keySet().forEach(key -> {
            if (bookMap.get(key).contains(key)) {
                specialProblems.getAndIncrement();
            }
        });
    
        return specialProblems.get();
    }