Página Principal

MC521-1s2014

MC621-2s2014

MC521-1s2015

MC621-2s2015

MC521-1s2016

Conteúdo

Área Reservada

edit sidebar

Friends or Not

Enunciado

/*** Autor: Marcelo Póvoa ***/
#include <cstdio>
#include <cstring>
#include <cctype>
#include <cmath>
#include <stack>
#include <string>
#include <algorithm>
#include <vector>
#include <map>
#include <set>
#include <queue>
using namespace std;
#define INF 0x3f3f3f3f
#define REP(i,n) for(int i=0; i<(n); i++)

int main()
{
    int n,d;
    char cs[1000];
    string sa[1010],sb[1010];
    int t[1010];
    set<pair<string,string> > res;
    set<pair<string,string> >::iterator it;

    scanf("%d%d",&n,&d);
    for (int i=0;i<n;i++) {
        scanf(" %s",cs);
        sa[i]=cs;
        scanf(" %s",cs);
        sb[i]=cs;
        scanf("%d",&t[i]);
    }

    for (int i=0;i<n;i++)
        for (int j=i+1;j<n;j++)
            if (sa[i]==sb[j] && sa[j]==sb[i] && t[j]-t[i]<=d && t[j]-t[i]>0)
                res.insert(make_pair(min(sa[i],sb[i]),max(sa[i],sb[i])));

    printf("%d\n",res.size());
    for (it=res.begin();it!=res.end();it++)
        printf("%s %s\n",(*it).first.c_str(),(*it).second.c_str());
    return 0;
}