Information
- ID
- 25
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 6
- Tags
- # Submissions
- 44
- Accepted
- 14
- Uploaded By
#include<iostream>
#include <string>
#include<vector>
#include<unordered_map>
#include<algorithm>
using namespace std;
int main(){
string s;
cin>>s;
int k;
cin>>k;
int n=s.length();
vector<int> nums;
for(char schar:s){
int a=schar;
nums.push_back(a);
}
unordered_map<int,int> hash;
for(int i=0;i<n;i++){
if(!hash.count(nums[i])){
hash[nums[i]]=i;
}
}
sort(nums.begin(),nums.end());
if(k>n){
//int result=nums[n-1];
cout<<hash[nums[n-1]];
}else{
cout<<hash[nums[k-1]];
}
return 0;
}
while True:
s = list(input("str:"))
k = int(input("k:"))
nums = []
result = float('inf')
for index, val in enumerate(s):
nums.append([index, val])
nums.sort(key = lambda x: ord(x[1]))
if k > len(s):
result = len(s)
else:
result = nums[k - 1][0]
while k >= 2 and nums[k - 1][1] == nums[k - 2][1]:
result = nums[k - 2][0]
k -= 1
print(result)
本题属于以下题库,请选择所需题库进行购买