如何使用 BufferedReader 在 Java 中获取空格分隔的输入? 请相应地更改代码,我希望 a、b、n 的值作为空格分隔的整数,然后我想在每个测试用例之后按 Enter。这意味着首先我将输入测试用例的数量,然后按 Enter 键。然后我输入 a 的值,然后按空格键,b 然后再按空格键,然后输入 n 的值,然后按 Enter 键输入下一个测试用例。
我知道这可以通过 Scanner 轻松完成,但我不想使用它,因为它会在在线评委上引发 TLE(Time Limit Extended)错误。
public static void main(String[] args) throws IOException {
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String inputString = br.readLine();
int testCases = Integer.parseInt(inputString);
double a,b,n,j,t=1;
int i;
int ans [] = new int[testCases];
for(i=0;i<testCases;i++)
{
inputString = br.readLine();
a = Double.parseDouble(inputString);
inputString = br.readLine();
b = Double.parseDouble(inputString);
inputString = br.readLine();
n = Double.parseDouble(inputString);
for(j=0;j<n;j++)
{
if(t==1)
{
a*=2;
t=0;
}
else if(t==0)
{
b*=2;
t=1;
}
}
if(a>b)
ans[i]=(int)(a/b);
else
ans[i]=(int)(b/a);
t=1;
}
for(i=0;i<testCases;i++)
System.out.println(ans[i]);
}catch(Exception e)
{
return;
}
}