

package com.tarena.test.B20;
import java.util.Arrays;
 import java.util.Scanner;
/**
  * 
  * 
  题目描述:
 输入一个由n个大小写字母组成的字符串,按照Ascii码从小到大的排序规则,查找字符串中第k个最小ascii码值的字母(k>=1),输出该字母所在字符串的位置索引(字符串的第一个字符位置索引为0)
 k如果大于字符串长度,则输出最大ascii值的字母所在字符的位置索引,如果有重复的字母,则输出字母的最小位置索引。
 输入描述:
 第一行输入一个由大小写字母组成的字符串
 第二行输入k,k必须大于0,k可以大于输入字符的长度
 输出描述:
 输出字符串中第k个最小ascii码值的字母所在字符串的位置索引,k如果大于字符串长度,则输出最大ascii值的字母所在字符串的位置索引,如果第k个最小ascii码值的字母存在重复,则输出该字母的最小位置索引
 示例1
 输入:
 AbcDeFG
 3
 输出:
 5
 示例2
 输入:
 AbCdeFeeeeG
 20
 输出:4
 */
 public class B28 {
     public static void main(String[] args) {
         try(Scanner sc = new Scanner(System.in)){
             
             String str = sc.nextLine();
             int index = Integer.parseInt( sc.nextLine());
             System.out.println(resultStr(index,str));
         }
     }
     public static Integer resultStr(Integer index,String str) {
         char[] arr = str.toCharArray();
         Arrays.sort(arr);
         
         if(index>arr.length) {
             index = arr.length;
         }
         char c = arr[index-1];
         int minIndex = str.indexOf(c);
         return minIndex;
     }
 }
了解知识点
1、ASCII 大小写的编码
2、 Arrays 默认排序规则