- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在解决JAVA编程挑战中的鄂尔多斯数问题。该代码在我的机器上完美运行。然而在线判断会导致运行时错误。谁能指出我犯的错误吗?
http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=985
这是代码
import java.util.*;
import java.io.*;
class Main
{
private String inputLines[];
private String namesToBeFound[];
private String namesInEachBook[][];
private String searchItem;
private boolean solnfound=false;
private static final BufferedReader br =new BufferedReader(new InputStreamReader(System.in));
static String read() throws IOException
{
String line;
while(true)
{
line=br.readLine();
if(line==null) break; //eof
else if(line.length()==0) continue; //blank line
else
{
line=line.trim().replaceAll("\\s+"," ");
return line;
}
}
return null;
}
public static void main(String args[]) throws IOException
{
Main ob=new Main();
int totalPapers,calcAuthors,totalScenarios;
//First input number of scenarios
totalScenarios=Integer.parseInt(read());
//Now start a loop for reading total number of scenarios
for(int scenario=1;scenario<=totalScenarios;scenario++)
{
//Now read the line containing the number of papers and authors
StringTokenizer line=new StringTokenizer(read()," ");
totalPapers=Integer.parseInt(line.nextToken());
calcAuthors=Integer.parseInt(line.nextToken());
//Read a line containing author names along with book names
ob.inputLines=new String[totalPapers];
for(int i=0;i<totalPapers;i++)
ob.inputLines[i]=read();
//Read a line containing the names to be searched
ob.namesToBeFound=new String[calcAuthors];
for(int i=0;i<calcAuthors;i++)
ob.namesToBeFound[i]=read();
//Now generate the array
ob.buildArray();
//Now search
System.out.println("Scenario "+scenario);
for(int i=0;i<calcAuthors;i++)
{
ob.searchItem=ob.namesToBeFound[i];
if(ob.searchItem.equals("Erdos, P."))
{
System.out.println("Erdos, P. 0");
continue;
}
ob.search(ob.namesToBeFound[i],1,new ArrayList());
if(ob.solnfound==false) System.out.println(ob.searchItem+" infinity");
ob.solnfound=false;
}
}
}
private void buildArray()
{
String str;
namesInEachBook=new String[inputLines.length][];
for(int i=0;i<inputLines.length;i++)
{
str=inputLines[i];
str=str.substring(0,str.indexOf(':'));
str+=",";
namesInEachBook[i]=new String[(countCommas(str)+1)>>1];
for(int j=0;j<namesInEachBook[i].length;j++)
{
str=str.trim();
namesInEachBook[i][j]="";
namesInEachBook[i][j]+=str.substring(0,str.indexOf(','))+",";
str=str.substring(str.indexOf(',')+1);
namesInEachBook[i][j]+=str.substring(0,str.indexOf(','));
str=str.substring(str.indexOf(',')+1);
}
}
}
private int countCommas(String s)
{
int num=0;
for(int i=0;i<s.length();i++)
if(s.charAt(i)==',') num++;
return num;
}
private void search(String searchElem,int ernosDepth,ArrayList searchedElem)
{
ArrayList searchSpace=new ArrayList();
searchedElem.add(searchElem);
for(int i=0;i<namesInEachBook.length;i++)
for(int j=0;j<namesInEachBook[i].length;j++)
{
if(namesInEachBook[i][j].equals(searchElem)) //Add all authors name in this group
{
for(int k=0;k<namesInEachBook[i].length;k++)
{
if(namesInEachBook[i][k].equals("Erdos, P.")) //Found
{
solnfound=true;
System.out.println(searchItem+" "+ernosDepth);
return;
}
else if(searchedElem.contains(namesInEachBook[i][k]) || searchSpace.contains(namesInEachBook[i][k])) continue;
searchSpace.add(namesInEachBook[i][k]);
}
break;
}
}
Iterator i=searchSpace.iterator();
while(i.hasNext())
{
String cSearchElem=(String)i.next();
search(cSearchElem,ernosDepth+1,searchedElem);
}
}
}
最佳答案
除了如果输入不包含 int
时可能生成的 NumberFormatException
之外,程序也无法以良好的方式处理输入的终止。
您也不要使用任何内存技术并每次都构建相同的搜索树,这将导致 UVa Judge 出现Time Limit Exceeded
错误。
您还应该使用输入和输出的缓冲来进一步减少编译时间。减少对函数的调用,如果可能的话,内联它们,即在相同的范围内编写。
希望这有帮助
关于java - UVa Online Judge on Erdos Number 运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13441222/
任务是编写代码,将敏感度标签应用于 SharePoint Online 文档库中的文档,而无需下载文件。 到目前为止,我已经探索了以下 API: SharePoint REST API v1 :可用于
期望的行为 将托管在 SharePoint Online 上的 Excel 文档嵌入到 HTML 页面中。 实际行为 嵌入加载,但是没有水平滚动条。 获取视口(viewport)右侧数据的唯一方法是单
我想在数据中心选择一个事件分区。通常我会使用以下语句: INVANTIVE> use 1552839 2> Exclamation itgendhb077: Error in Invantive Da
我正在使用 Azure Functions,特别是 PowerShell 脚本函数。我想知道如何使用连接到 SharePoint Online 的脚本。 要针对 SharePoint Online 运
我正在尝试使用 API 按姓名查询客户。具有非 ASCII 字符的名称(例如 민준 或 Włodarski)会导致查询失败。这是一个示例查询: SELECT * FROM Customer WHERE
我已经将一个SharePoint列表从2019年迁移到365年。该列表具有NINTEX形式,而该NINTEX形式具有较少的JavaScript文件。在SP Online中,NWF$().SPServi
我正在尝试在内存中生成 PDF 以将其发送到 WS。此 PDF 应在内存 (Stream) 和 Microsoft CRM“云”中的插件代码中创建。这可能吗? 在插件中(已经编码和部署)我有这行,第
当我使用 Invantive Data Hub 从多个 Exact Online 公司下载数据时,我得到了重复的行,而我希望每个公司只有一行。 我使用以下查询: select gla.code ,
我们刚刚上线 https://ecotaksen.be 。 Exact 上的查询和更新运行良好,但安装生产许可证后出现错误 itgenobr001:找不到客户端。。 我的数据容器规范是: 使用具有相
我在 Dynamics CRM Online 2015 中创建了一个插件,用于在 SharePoint Online 文档库中创建文件夹。该插件工作正常。但是,我想在 CRM 中的帐户名称更改时重命名
我正在关注 this blog在 SPFX 部分实现 fluentUI,但在执行“Gulp Build”时出现以下错误: Error - [tsc] node_modules/@fluentui/re
我能够在桌面 .Net 项目中通过 MSAL 检索和使用访问 token 。我可以成功检索 token ,并且它们在我的 Graph 调用中有效。 但是,尝试将访问 token 与 SharePoin
为了遵守法规,我尝试从我的一些部门下载采购发票文件(PDF 文件),将它们保存在磁盘上以供存档。 我使用 Invantive 查询工具来执行此操作。我想知道使用哪个表以及如何仅针对采购发票文档导出这些
我正在开发一个基于 Spring-MVC 的 Web 应用程序,该应用程序使用 Cometd 进行聊天。为了实时管理哪些用户在线,我们在用户在线时发送通知。因此,当窗口关闭时,不会出现通知,并且 30
我在 Visual Studio Online 上使用 GIT 进行源代码管理。我想将一个项目从我的个人 VSO 账户转移到我的企业 VSO 账户。例如。从 account1.visualstudio
当我关闭 Word Online 中的对话框时,我在控制台中收到以下消息: Unknown conversation Id. 我不是得到一个可以处理的代码,而是得到...... (macOS/Chro
短版:如何加载 PowerApps 中托管元数据字段的所有可用选项? 长版: 我有一个正常工作的 PowerApps 应用程序,但用户希望能够在离线时添加数据,并在再次在线时同步回来。官方 Power
我是 QuickBooks 的新手,我所有的搜索都导致了相互矛盾的答案。我真的需要知道这一点才能继续前进。 我们有一个本地应用程序(如果重要的话,旧版 MFC 应用程序)。我们的一些客户使用 Quic
这是我的代码,我尝试使用 countOnline 函数计算我们有多少在线用户。 我遇到错误“无法读取未定义的‘在线’属性”; function countOnline(usersObj) { le
如果我们有一个巨大的事实表并想要添加一个新维度,我们可以这样做: BEGIN TRANSACTION ALTER TABLE [GiantFactTable] ADD NewDimValueId IN
我是一名优秀的程序员,十分优秀!