#22212: 為何程cin格式改成scanf會TEL?


panchunhsiang@gmail.com (沒牙)

學校 : 不指定學校
編號 : 123249
來源 : [140.117.248.2]
最後登入時間 :
2020-09-24 13:36:45
a693. 吞食天地 | From: [182.235.77.131] | 發表日期 : 2020-08-16 00:43

 

 

#include <iostream>

#include <vector>

using namespace std;

 

int main()

{

    ios_base::sync_with_stdio(false);

    cin.tie(0);

    int n, m;

    vector<int> a(100005);

    a.clear();

    

    while (cin >> n >> m)

    {

        int N, sum = 0;

        a.push_back(sum);

        while(n--)

        {

            cin >> N;

            sum += N;

            a.push_back(sum);

        }

        int l, r;

        while (m--)

        {

            cin >> l >> r;

            cout << a[r] - a[l - 1] << '\n';

        }

        a.clear();

    }

}

 
#22213: Re:為何程cin格式改成scanf會TEL?


panchunhsiang@gmail.com (沒牙)

學校 : 不指定學校
編號 : 123249
來源 : [140.117.248.2]
最後登入時間 :
2020-09-24 13:36:45
a693. 吞食天地 | From: [182.235.77.131] | 發表日期 : 2020-08-16 00:50

 

     目前是85ms,可是當我把裡面的cin改成scanf就會TLE,但是我電腦自己跑沒有問題

 
#25782: Re:為何程cin格式改成scanf會TEL?


Tamilala (Tamilala不是星導夢女)

學校 : 國立臺南女子高級中學
編號 : 138845
來源 : [140.113.129.144]
最後登入時間 :
2024-04-20 02:23:18
a693. 吞食天地 | From: [61.227.244.128] | 發表日期 : 2021-06-22 12:06

 

     目前是85ms,可是當我把裡面的cin改成scanf就會TLE,但是我電腦自己跑沒有問題

 

ios_base::sync_with_stdio(false);

cin.tie(0);

試試看把這兩行拿掉?雖然這兩行可以協助優化cin、cout速度,不過好像會取消iostream跟stdio的同步,導致scanf跟printf出問題,所以可能問題出在這?

 
ZeroJudge Forum