UVa11968 - In The Airport

简介: UVa11968 - In The Airport
importjava.io.IOException;
importjava.io.FileInputStream;
importjava.io.InputStreamReader;
importjava.io.BufferedReader;
importjava.io.PrintWriter;
importjava.io.OutputStreamWriter;
importjava.io.StreamTokenizer;
publicclassMain{
publicstaticbooleanDEBUG=false;
publicBufferedReadercin;
publicPrintWritercout;
publicStreamTokenizertokenizer;
publicintn, m, k;
publiclongtotal;
publiclong[] mArr, nArr, kArr;
publicvoidinit()
    {
try {
if (DEBUG) {
cin=newBufferedReader(newInputStreamReader(
newFileInputStream("d:\\OJ\\uva_in.txt")));
            } else {
cin=newBufferedReader(newInputStreamReader(System.in));
            }
        } catch (IOExceptione) {
e.printStackTrace();
        }
cout=newPrintWriter(newOutputStreamWriter(System.out));
tokenizer=newStreamTokenizer(cin);
    }
publicStringnext()
    {
try {
tokenizer.nextToken();
if (tokenizer.ttype==StreamTokenizer.TT_EOF)
returnnull;
elseif (tokenizer.ttype==StreamTokenizer.TT_WORD)
returntokenizer.sval;
elseif (tokenizer.ttype==StreamTokenizer.TT_NUMBER) 
returnString.valueOf((int)tokenizer.nval);
        } catch (IOExceptione) {
e.printStackTrace();
        }
returnnull;
    }
publicvoidinput()
    {
try {
n=Integer.parseInt(next());
m=Integer.parseInt(next());
k=Integer.parseInt(next());
total=0;
mArr=newlong[m];
kArr=newlong[k];
nArr=newlong[n-m-k];
for (inti=0; i<m; i++) {
mArr[i] =Long.parseLong(next());
total+=mArr[i];
            }
for (inti=0; i<k; i++) {
kArr[i] =Long.parseLong(next());
total+=kArr[i];
            }
inttmpn=n-m-k;
for (inti=0; i<tmpn; i++) {
nArr[i] =Long.parseLong(next());
total+=nArr[i];
            }
        } catch (Exceptione) {
e.printStackTrace();
        }
    }
publicvoidsolve(intt)
    {
cout.printf("Case #%d: ", t);
intans1=0, ans2=0;
for (inti=0; i<m; i++) {
longtmp1=n*mArr[i] -total;
longtmp2=n*mArr[ans1] -total;
if (Math.abs(tmp1) <Math.abs(tmp2)) ans1=i;
elseif (Math.abs(tmp1) ==Math.abs(tmp2) &&mArr[i] <mArr[ans1]) ans1=i;
        }
for (inti=0; i<k; i++) {
longtmp1=n*kArr[i] -total;
longtmp2=n*kArr[ans2] -total;
if (Math.abs(tmp1) <Math.abs(tmp2)) ans2=i;
elseif (Math.abs(tmp1) ==Math.abs(tmp2) &&kArr[i] <kArr[ans2]) ans2=i;
        }
cout.printf("%d %d", mArr[ans1], kArr[ans2]);
cout.println();
cout.flush();
    }
publicstaticvoidmain(String[] args)
    {
try {
Mainsolver=newMain();
solver.init();
intt=Integer.parseInt(solver.next());
for (inti=1; i<=t; i++) {
solver.input();
solver.solve(i);
            }
        } catch (Exceptione) {
e.printStackTrace();
        }
    }
}
目录
相关文章
|
编译器 PHP 开发者
PHP在现代Web开发中的角色与影响
【8月更文挑战第18天】本文深入探讨了PHP作为一门服务器端脚本语言,在现代Web开发中所扮演的角色以及它所带来的深远影响。文章首先回顾了PHP的发展历程,随后详细分析了PHP在Web开发中的应用优势和面临的挑战,并讨论了PHP与其他编程语言的关系及其在现代Web开发趋势中的位置。最后,文章展望了PHP的未来发展趋势,为读者提供了对PHP在Web开发中的全面了解。
|
设计模式 安全 算法
【Java基础】 迭代器
迭代器是一种在 Java 中常用的设计模式,用于遍历集合中的元素。通过使用迭代器,我们可以统一访问集合元素,而不需要了解集合的具体实现。
215 1
|
分布式计算 Linux Android开发
这 8 款 Windows 屏保程序,让你的锁屏都格调满满
这 8 款 Windows 屏保程序,让你的锁屏都格调满满
1919 0
这 8 款 Windows 屏保程序,让你的锁屏都格调满满
|
前端开发 安全 JavaScript
  ERC20 Token智能合约DApp开发
ERC20 Token智能合约DApp开发是指基于以太坊区块链平台和ERC20 Token标准开发的去中心化应用程序,用于数字货币、代币、积分等的发行、交易和管理。
译MassTransit 消息契约
消息契约 在MassTransit中,使用.NET .NET系统定义消息契约。消息可以使用类和接口来定义,但是,建议类型使用只读属性而不使用行为。 注意:强烈建议使用消息接口的接口,基于多年的经验,具有不同级别的开发经验。
1218 0
|
Web App开发 XML 数据安全/隐私保护

热门文章

最新文章

下一篇
开通oss服务