好再定免费算命运势网-免费测算,算命最准的免费网站!logo

带鼠的动物 浙江大学哈利·波特要考试了,他需要你的帮助

时间:2024-04-30 14:08:57 作者:好再定算命网 来源:原创

单位浙江大学

哈利·波特要参加考试,他需要你的帮助。 本课程教您使用魔法将一种动物变成另一种动物的能力。 例如,把猫变成老鼠的咒语是“哈哈”,把老鼠变成鱼的咒语是“呵呵”,等等。 反方向改变咒语就是简单地反向念诵原来的咒语,例如啊哈可以把老鼠变成猫。 另外,如果想把猫变成鱼带鼠的动物 浙江大学哈利·波特要考试了,他需要你的帮助,可以直接念咒语,也可以把猫变成老鼠、老鼠变成鱼的咒语组合起来:。

现在哈利·波特手里有一本教科书,上面列出了所有的变形咒语和可以改变的动物。 老师允许他带一只动物到考场,测试他将动物变成任意指定动物的能力。 于是他就来问你:你能带什么动物,能让最难变的动物(也就是需要最长咒语的动物变成哈利·波特自己带来的动物)需要最短的咒语? 例如:如果只有猫、老鼠和鱼,那么显然哈利·波特应该带上老鼠,因为老鼠只需要念出4个字就可以变成另外两种动物; 如果他带了猫,他需要发音至少6个字符。 只有人物才能把猫变成鱼; 同样,带鱼也不是最好的选择。

输入格式:

输入指令:输入第1行给出两个正整数N(≤100)和M,其中N为参与测试的动物总数好再定运势网,M为直接变换所用的魔棒数量。 为了简单起见,我们将动物从1到N编号。然后有M行,每行给出3个正整数,分别是两只动物的编号和它们变形所需的咒语长度(≤100)。 数字之间用空格分隔。

输出格式:

输出哈利·波特应该带进考场的动物数量,以及最长的变形咒的长度,以空格分隔。 如果仅用一只动物无法完成所有变换要求,则输出0。如果可以选择的动物有多种,则输出数量最小的一种。

输入示例:

6 11
3 4 70
1 2 1
5 4 50
2 6 50
5 6 60
1 3 70
4 6 60
3 6 80
5 1 100
2 4 60
5 2 80

输出样本:

4 70

个人想法:

这是一个多源最短路径问题。 适合用Floyd算法来求解。

我们首先使用邻接矩阵来存储每两个动物之间的变换咒语的长度,然后使用Floyd算法获得从每个动物到其他动物的咒语长度。 当它们不可变时,我们需要输出0;

为了找到合适的动物带鼠的动物,我们需要遍历行。 每行代表从一种动物到其他动物的咒语长度。 遍历每一行,保存该行的最大值。 如果有不可达,则直接返回。 无法触及该动物。 遍历完每一行后,我们需要更新每一行中最大值中的最小值,并保存对应的行,即我们要带的动物,以及法术的长度。

交流代码:

#include 
#include 
#include 
using namespace std;
const int N = 210, INF = 1e9;
int n, m, Q;
int d[N][N];
void floyd()
{
    for (int k = 1; k <= n; k++)
        for (int i = 1; i <= n; i++)
            for (int j = 1; j <= n; j++)
                d[i][j] = min(d[i][j], d[i][k] + d[k][j]);
}
int main()
{
    scanf("%d%d", &n, &m);
    for (int i = 1; i <= n; i++)
        for (int j = 1; j <= n; j++)
            if (i == j) d[i][j] = 0;
            else d[i][j] = INF;
    while (m--)
    {
        int a, b, c;
        scanf("%d%d%d", &a, &b, &c);
        d[a][b] = min(d[a][b], c);
        d[b][a] = min(d[b][a], c);
    }
    floyd();
    int Maxn = 0,Maxpre=100000,max;
    int i=1, j=1;
    for (i = 1; i <= n; i++) {
        for (j = 1; j <= n; j++) {
            if (i != j) {
                if (d[i][j] == INF) {
                    Maxn = 0;
                    break;
                }
                else if (d[i][j] > Maxn) {
                    Maxn = d[i][j];
                }
            }
        }
        if (Maxn != 0) {
            if (Maxn < Maxpre) {
                Maxpre = Maxn;
                max = i;
            }
        }
        Maxn = 0;
    }
    if (Maxpre == 100000) {
        cout << "0";
        return 0;
    }
    cout << max << " " << Maxpre;
    return 0;
}

精彩推荐

免费八字算命

2000年
    1月
      1日
        0时
          大师算命

          星座运势

          白羊座
          • 今日
          • 明日
          • 本周
          • 本月
          • 本年
          今日运势
          今日运势平稳
          今天不论做什么进展都颇为顺畅,工作效率加快,过程得心应手,来也能紧...[详情]

          在线查询

          属鼠的人性格
          • 属鼠的人性格
          • 属牛的人性格
          • 属虎的人性格
          • 属兔的人性格
          • 属龙的人性格
          • 属蛇的人性格
          • 属马的人性格
          • 属羊的人性格
          • 属猴的人性格
          • 属鸡的人性格
          • 属狗的人性格
          • 属猪的人性格
          属鼠女
          • 属鼠女
          • 属牛女
          • 属虎女
          • 属兔女
          • 属龙女
          • 属蛇女
          • 属马女
          • 属羊女
          • 属猴女
          • 属鸡女
          • 属狗女
          • 属猪女
          属鼠男
          • 属鼠女
          • 属牛女
          • 属虎女
          • 属兔女
          • 属龙女
          • 属蛇女
          • 属马女
          • 属羊女
          • 属猴女
          • 属鸡女
          • 属狗女
          • 属猪女
          A型血
          • A型型血
          • B型型血
          • AB型型血
          • O型型血
          • 熊猫型型血
          A型血女
          • A型型血女
          • B型型血女
          • AB型型血女
          • O型型血女
          • 熊猫型型血女
          A型血男
          • A型型血男
          • B型型血男
          • AB型型血男
          • O型型血男
          • 熊猫型型血男
          由字脸型
          • 由字脸
          • 甲字脸
          • 申字脸
          • 田字脸
          • 同字脸
          • 王字脸
          • 圆字脸
          • 目字脸
          • 用字脸
          • 风字脸
          眉毛有痣
          • 眉毛有痣
          • 眼角有痣
          • 下巴有痣
          • 肩膀有痣
          • 耳朵有痣
          • 鼻子有痣
          • 手心有痣
          • 脚底有痣
          • 胸口有痣
          • 嘴角有痣
          • 脖子有痣
          婚姻线
          • 婚姻线
          • 事业线
          • 智慧线
          • 生命线
          • 财运线
          • 成功线
          • 上进线
          • 障碍线
          • 健康线
          • 活力线
          • 烦恼线
          • 纵欲线
          • 宠爱线
          • 创作线
          • 希望线
          • 努力线
          • 不测线
          • 人缘线
          ? 相濡以沫
          白羊女
          白羊男
          白羊座
          白羊座
          3日21日-4月20日
          查看详解
          2000年
            1月
              1日

                解签算卦

                付费测算