ACM ICPC 2017 Warmup Contest 6 G

来源:互联网 发布:血酬定律知乎 编辑:程序博客网 时间:2024/05/18 00:41

G. Google is Feeling Lucky

Google is one of the most famous Internet search engines which hosts and develops a number of Internet-based services and products. On its search engine website, an interesting button “I‟m feeling lucky” attracts our eyes. This feature could allow the user skip the search result page and goes directly to the first ranked page.

Amazing! It saves a lot of time.The question is, when one types some keywords and presses “I‟m feeling lucky”button, which web page will appear? Google does a lot and comes up with excellent approaches to deal with it. In this simplified problem, let us just consider thatGoogle assigns every web page an integer-valued relevance. The most related page will be chosen. If there is a tie, all the pages with the highest relevance are possible to be chosen.

Your task is simple, given 1010 web pages and their relevance. Just pick out all the possible candidates which will be served to the user when “I‟m feeling lucky”.

Input

The input contains multiple test cases. The number of test cases T is in the first line of the input file.

For each test case, there are 1010 lines, describing the web page and the relevance.

Each line contains a character string without any blank characters denoting the URL of this web page and an integer Vi denoting the relevance of this web page. The length of the URL is between 11 and 100100 inclusively. (1 \le Vi \le 100)(1≤Vi≤100)

Output

For each test case, output several lines which are the URLs of the web pages which are possible to be chosen. The order of the URLs is the same as the input.

Please look at the sample output for further information of output format.

样例输入

2
www.youtube.com 1
www.google.com 2
www.google.com.hk 3
www.alibaba.com 10
www.taobao.com 5
www.bad.com 10
www.good.com 7
www.fudan.edu.cn 8
www.university.edu.cn 9
acm.university.edu.cn 10
www.youtube.com 1
www.google.com 2
www.google.com.hk 3
www.alibaba.com 11
www.taobao.com 5
www.bad.com 10
www.good.com 7
www.fudan.edu.cn 8
acm.university.edu.cn 9
acm.university.edu.cn 10
样例输出

Case #1:
www.alibaba.com
www.bad.com
acm.university.edu.cn
Case #2:
www.alibaba.com

题目的意思是找出相关度高的网站,然后按先后顺序输出来。可以直接开个结构体,然后排序。

#include <iostream>#include <algorithm>#include <string>using namespace std;int pos[100], num[100];struct website{    char url[101];    int rel;    int id;}web[20];bool cmp(const website &web1, const website &web2){    if (web1.rel > web2.rel)        return true;    else if (web1.rel == web2.rel)    {        if (web1.id < web2.id) return true;    }        return false;}int main(){    int T;    cin >> T;    while (T--) {        for (int i = 0; i < 10; i++)        {            cin >> web[i].url >> web[i].rel;            web[i].id = i;        }        web[10].rel = 0;        sort(web, web + 10, cmp);        cout << "Case #" << n++ << ":\n";        int flag; int j = 0;        flag = web[j].rel;        while (flag == web[j].rel)        {            cout << web[j].url << endl;            flag = web[j].rel;            j++;        }    }    return 0;}
阅读全文
0 0
原创粉丝点击