Submission #306203


Source Code Expand

#include<map>
#include<cstdio>
#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
#include<cstring>
using namespace std;

typedef long long LL;
typedef vector<int> VI;

#define REP(i,n) for(int i=0, i##_len=(n); i<i##_len; ++i)
#define EACH(i,c) for(__typeof((c).begin()) i=(c).begin(),i##_end=(c).end();i!=i##_end;++i)

template<class T> inline void amin(T &a, const T &b) { if (a>b) a=b; }
template<class T> inline void amax(T &a, const T &b) { if (a<b) a=b; }

int N;
map<pair<int, int>, int> mp;

int main() {
    scanf("%d", &N);
    REP (i, N) {
	int x, y;
	scanf("%d%d", &x, &y);
	mp[make_pair(x, y)] = i;
    }

    EACH (i, mp) {
	EACH (j, mp) {
	    if (i == j) continue;
	    pair<int, int> p = i->first, q = j->first;
	    
	    int x1 = q.first + (q.second - p.second);
	    int y1 = q.second - (q.first- p.first);
	    int x2 = x1 + (y1 - q.second);
	    int y2 = y1 - (x1- q.first);

	    pair<int, int> r = make_pair(x1, y1);
	    pair<int, int> s = make_pair(x2, y2);
	    if (mp.count(r) && mp.count(s)) {
		int a[] = {i->second, j->second, mp[r], mp[s]};
		sort(a, a+4);
		puts("4");
		REP (i, 4) {
		    printf("%d\n", a[i]+1);
		}
		exit(0);
	    }
	}
    }

    puts("0");


    return 0;
}

Submission Info

Submission Time
Task C - Regular Polygon
User natsugiri
Language C++ (G++ 4.6.4)
Score 100
Code Size 1293 Byte
Status AC
Exec Time 129 ms
Memory 968 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:23:20: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
./Main.cpp:26:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 20
Set Name Test Cases
Sample subtask0_sample_01.txt, subtask0_sample_02.txt
All subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_random01.txt, subtask1_random02.txt, subtask1_random03.txt, subtask1_random04.txt, subtask1_random05.txt, subtask1_random06.txt, subtask1_random07.txt, subtask1_random08.txt, subtask1_special01.txt, subtask1_special02.txt, subtask1_special03.txt, subtask1_special04.txt, subtask1_special05.txt, subtask1_special06.txt, subtask1_special07.txt, subtask1_special08.txt, subtask1_special09.txt, subtask1_special10.txt
Case Name Status Exec Time Memory
subtask0_sample_01.txt AC 25 ms 920 KB
subtask0_sample_02.txt AC 25 ms 860 KB
subtask1_random01.txt AC 129 ms 920 KB
subtask1_random02.txt AC 129 ms 924 KB
subtask1_random03.txt AC 125 ms 920 KB
subtask1_random04.txt AC 128 ms 924 KB
subtask1_random05.txt AC 29 ms 928 KB
subtask1_random06.txt AC 48 ms 924 KB
subtask1_random07.txt AC 128 ms 928 KB
subtask1_random08.txt AC 129 ms 928 KB
subtask1_special01.txt AC 26 ms 924 KB
subtask1_special02.txt AC 24 ms 916 KB
subtask1_special03.txt AC 24 ms 920 KB
subtask1_special04.txt AC 23 ms 928 KB
subtask1_special05.txt AC 101 ms 924 KB
subtask1_special06.txt AC 64 ms 920 KB
subtask1_special07.txt AC 35 ms 924 KB
subtask1_special08.txt AC 65 ms 968 KB
subtask1_special09.txt AC 107 ms 916 KB
subtask1_special10.txt AC 26 ms 864 KB