- 论坛徽章:
- 1
|
本帖最后由 Mr-Summer 于 2013-03-30 14:14 编辑
https://code.google.com/codejam/contest/32016/dashboard#s=p0
Google Code Jam 上的练习题目(计算给定2个数组的两两乘积和的最小值),想用Perl试一下但是不知道结果为啥不对,求解惑。- open IN,"D:/Home/Perl/Google Code Jam/A-small-practice.in";
- open OUT, ">","D:/Home/Perl/Google Code Jam/A-small-practice.out";
- $test_case_num = <IN>;
- $n = 0;
- for(1..$test_case_num){
- $result = 0;
- $m = 0;
- $n ++;
- $row = <IN>;
- $line_1 =<IN>;
- $line_2 = <IN>;
- @arr_1 = split(/ / , $line_1);
- @arr_2 = split(/ / , $line_2);
- @arr_1 = sort @arr_1;
- @arr_2 = sort @arr_2;
- @arr_2 = reverse @arr_2;
- for( 1..$row){
- $result = $result + $arr_1[$m]*$arr_2[$m];
- $m++;
- }
- printf OUT ("Case #%d: %d\n",$n,$result);
- }
- close IN;
- close OUT;
复制代码 |
|