Uncle Johny
www.codechef.com
作为一个冗长的人,我提供了这个链接。
https://www.codechef.com/problems/JOHNY/
我有两个解决方案(代码1和代码2)
class UncleJohny
{
public static void main(String args[]) throws IOException
{
BufferedReader br = new BufferedReader(newInputStreamReader(System.in));
PrintWriter pw = new PrintWriter(System.out);
int test_case = Integer.parseInt(br.readLine());
while(test_case-- > 0)
{
int n = Integer.parseInt(br.readLine());
int i = 0;
String a[] = br.readLine().split(" "); //Mind this line
int k = Integer.parseInt(br.readLine());
String temp = a[k - 1];
Arrays.sort(a);
pw.println(Arrays.binarySearch(a, temp) + 1);
}
pw.flush();
}
}
class UncleJohny
{
public static void main(String args[]) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
PrintWriter pw = new PrintWriter(System.out);
int test_case = Integer.parseInt(br.readLine());
while(test_case-- > 0)
{
int n = Integer.parseInt(br.readLine());
int a[] = new int[n];
int i = 0;
for(String str: br.readLine().split(" "))
{
a[i++] = Integer.parseInt(str); //Mind this line
}
int k = Integer.parseInt(br.readLine());
int temp = a[k - 1];
Arrays.sort(a);
pw.println(Arrays.binarySearch(a, temp) + 1);
}
pw.flush();
}
}
上述代码中的基本任务是在排序后找到输入数组temp
中a
的值索引
据我所知,这两个代码的输出没有任何区别。 (如果我错了,请纠正我)
CodeChef正在接受Code 2
,但对Code 1
尽管相同,但为什么code 2
被接受而code 1
不被接受?
为什么我需要将输入值存储在int
数组中(如代码2所示),而不是将它们存储到String
数组中(如代码1所示),以便得到我的答案接受?
答案 0 :(得分:3)
整数的排序顺序与字符串的排序顺序不同。例如。 “1”< “10”< “2”......