Dynamic Array

  • + 0 comments
    public static List<Integer> dynamicArray(int n, List<List<Integer>> queries) {
        List<Integer> result = new ArrayList<>();
        List<List<Integer>> sequenceList = new ArrayList<>();
        for(int i =0; i < n; i ++){
            sequenceList.add(new ArrayList<>());
        }
        Integer lastAnswer =0;
        for(List<Integer> query : queries){
            int index = 0;
            int type  = query.get(0);
            int x = query.get(1);
            int y = query.get(2);
    
            if(type == 1){
                index = (x ^ lastAnswer) % n;
                sequenceList.get(index).add(y);
            }else if (type == 2){
                index = (x ^ lastAnswer) % n;
                lastAnswer = sequenceList.get(index).get(y % sequenceList.get(index).size());
                result.add(lastAnswer);
            } 
        }
    return result;
    

    }