Rezultati

Up. imeNalogaJezikRezultatČas oddaje
muzik-2017 Črte C++ 0/100Prekoračen čas (TLE) 20. apr '17 @ 18:36

Test Točke Porabljen spomin Porabljen čas Status
#1 10/10 3,055 MiB 0,004 s OK
#2 10/10 3,219 MiB 0,010 s OK
#3 10/10 3,281 MiB 0,010 s OK
#4 10/10 25,770 MiB 0,974 s OK
#5 0/10 165,582 MiB 10,925 s Prekoračen čas
#6 0/10 3,148 MiB 0,612 s Napačen odgovor
Tvoj izhod:
​-252017864
<<<EOF>>>
Pravilen izhod:
​2591567982003000
<<<EOF>>>
#7 0/10 3,156 MiB 2,890 s Napačen odgovor
Tvoj izhod:
​-1418685010
<<<EOF>>>
Pravilen izhod:
​20382496101806
<<<EOF>>>
#8 0/10 3,254 MiB 4,236 s Napačen odgovor
Tvoj izhod:
​650584417
<<<EOF>>>
Pravilen izhod:
​1441612112225
<<<EOF>>>
#9 0/10 3,758 MiB 10,655 s Prekoračen čas
#10 0/10 179,340 MiB 10,770 s Prekoračen čas

Ocenjevani program (main.cpp):
#include <iostream>
#include <map>
#include <vector>

using namespace std;



int main(){
    vector<pair<int, int> > tocke;
    int N;
    cin >> N;
    tocke.reserve(N);
    for(int j = 0; j < N; ++j){
        int x,y;
        cin >> x;
        cin >> y;
        tocke.push_back(make_pair(x,y));
    }
    map<int, int> sl;
    int NN = N-1;
    for(int j = 0; j < NN; ++j){
        pair<int, int> f;
        f = tocke[j];
        for(int i = j+1; i < N; ++i){
            pair<int, int> s;
            s = tocke[i];
            ++sl[(f.first - s.first)*(f.first - s.first) + (f.second - s.second)*(f.second - s.second)];
        }
    }
    int ma = 0;
    for(map<int, int>::iterator it = sl.begin(); it != sl.end(); ++it){
        int t = it->second;
        if(t >= 2){
            ma += t*(t-1)/2;
        }
    }
    cout << ma << endl;
    return 0;
}