zoukankan      html  css  js  c++  java
  • codejam环境熟悉—Minimum Scalar Product

    今天准备熟悉一下codejam的在线编程,为google的笔试做准备,因此按照codejam上对新手的建议,先用了一个简单的题目来弄清楚流程。记录一下需要注意的地方。

    1.输入输出

    输入输出重定位即可,拿Minimum Scalar Product这个例子示例如下:

    #include <iostream>
    #include <vector>
    #include <algorithm>
    #include <functional>
    #include <cstdio>
    using namespace std;

    int main()
    {
    freopen("A-large-practice.in","r",stdin);
    freopen("output.in","w",stdout);

    int caseNum;
    int curVectorLen;
    typedef long long longType;
    longType curTotal;
    cin>>caseNum;
    for(int i=0;i<caseNum;++i)
    {
    cin>>curVectorLen;

    vector<int> vec1(curVectorLen,0);
    vector<int> vec2(curVectorLen,0);

    for(int j=0;j<curVectorLen;j++)
    {
    cin>>vec1[j];
    }

    for(int j=0;j<curVectorLen;j++)
    {
    cin>>vec2[j];
    }

    sort(vec1.begin(),vec1.end());
    sort(vec2.begin(),vec2.end());

    curTotal=0LL;
    for(int j=0;j<curVectorLen;++j)
    {
    curTotal+=(longType)vec1[j]*vec2[curVectorLen-1-j];
    }

    cout<<"Case #"<<i+1<<": "<<curTotal<<endl;

    }

    return 0;
    }

    可知,平时的OJ环境默认输出现在转到了文件读取和写入。转换的关键代码如下:

    #include <iostream>
    #include <vector>
    #include <algorithm>
    #include <functional>
    #include <cstdio>
    using namespace std;

    int main()
    {
    freopen("A-large-practice.in","r",stdin);
    freopen("output.in","w",stdout);

    //正常的cin和cout
    return 0;
    }

    2.关于Minimum Scalar Product

    注意溢出问题就好了。两个int类型乘的时候注意强制类型转换一下。

  • 相关阅读:
    在线教程-Qt参考文档
    利用QT中Qpainter画点,直线,弧线等简单图形
    Office2013下载地址
    Linux下声卡的安装(ALSA)
    聆听自由的声音----Linux下声卡驱动软件ALSA的安装与配置
    linux找回root密码
    删除排序数组中重复的元素【数组专题】
    类模板派生出新的类模板
    TCP的拥塞控制
    linux运行级别
  • 原文地址:https://www.cnblogs.com/obama/p/3323316.html
Copyright © 2011-2022 走看看