publicclassSolution{ publicintcalculateTime(String keyboard, String word){ int res = 0; int index = 0; int[] map = newint[128]; for (int i = 0; i < keyboard.length(); i++) { map[keyboard.charAt(i)] = i; } for (char ch : word.toCharArray()) { int newIndex = map[ch]; res += Math.abs(newIndex - index); index = newIndex; } return res; } }
publicclassMain{ privatestaticvoidprocess(int[] arr, int segs){ int[] indexes = newint[arr.length]; int index = 0; for (int i = 0; i < arr.length; i++) { if (arr[i] % 2 == 1) { indexes[index++] = i; } } if (index < segs || (index - segs) % 2 == 1) { System.out.println("NO"); return; } System.out.println("YES"); for (int i = 0; i < segs - 1; i++) { System.out.print(indexes[i] + 1); System.out.print(" "); } System.out.println(arr.length); }
publicstaticvoidmain(String[] args){ FastReader scn=new FastReader(); int tn = scn.nextInt(); while (tn-- > 0) { int n = scn.nextInt(); int seg = scn.nextInt(); int[] arr = newint[n]; for (int i = 0; i < n; i++) { arr[i] = scn.nextInt(); } process(arr, seg); } }