第十五届东北大学生编程大赛题解

简介: 第十五届东北大学生编程大赛题解

E.


题意就是完美数是这个数的因子和等于他,半完美数是只要有一部分因子就行,给一个数,求构成半完美的因子。


#include <bits/stdc++.h>
using namespace std;
int main() {
  int t;
  cin >> t;
  while (t--) {
    long long p;
    cin >> p;
    cout << 6* p << " " << 3 << endl;
    cout << p << " " << 2 * p << ' ' << 3* p << endl;
  }
}


I.


就是判断区间点菜价格取值就行。


K.

我们给查询攻击和桥的坚固性排成大到小,然后按照并查集来安装,1*2*3方式统计桥的个数。


#include <bits/stdc++.h>
using namespace std;
struct node {
  int x, y;
  long long k;
} a[10000007];
long long fa[1000007], num[100007], ans[1000007];
struct node1 {
  long long x;
  int id;
} p[1000007];
bool cmp(node a1, node b1) {
  return a1.k > b1.k;
}
bool cmp1(node1 a1, node1 b1) {
  return a1.x > b1.x;
}
long long father(int x) {
  if (fa[x] == x)
    return x;
  return fa[x] = father(fa[x]);
}
int main() {
  cin.sync_with_stdio(false);
  int t;
  cin >> t;
  while (t--) {
    int n, m, q;
    cin >> n >> m >> q;
    for (int i = 1; i <= n; i++) {
      fa[i] = i;
      num[i] = 1;
    }
    for (int i = 1; i <= m; i++) {
      cin >> a[i].x >> a[i].y >> a[i].k;
    }
    for (int i = 1; i <= q; i++) {
      cin >> p[i].x;
      p[i].id = i;
    }
    sort(a + 1, a + 1 + m, cmp);
      sort(p + 1, p + 1 + q, cmp1);
    int j = 1;
    long long sum = 0;
    for (int i = 1; i <= q; i++) {
      long long t = p[i].x;
      while (j <= m && a[j].k >= t) {
        long long xx = father(a[j].x), yy = father(a[j].y);
        if (xx != yy) {
          sum += num[xx] * num[yy];
          num[yy] += num[xx];
          fa[xx] = yy;
        }
        j++;
      }
      ans[i] = sum;
    }
    for (int i = 1; i <= q; i++) {
      cout << ans[i] << endl;
    }
  }
}


M.


纯模拟,用stringstream来取单词就行。


#include <bits/stdc++.h>
using namespace std;
map<string, string>mp;
int main() {
  mp["iu"] = "q", mp["en"] = "f", mp["ei"] = "w", mp["eng"] = "g";
  mp["ang"] = "h", mp["uan"] = "r", mp["an"] = "j", mp["ue"] = "t";
  mp["uai"] = "k", mp["ing"] = "k", mp["un"] = "y", mp["uang"] = "l";
  mp["iang"] = "l", mp["sh"] = "u", mp["ou"] = "z", mp["ch"] = "i";
  mp["ia"] = "x", mp["ua"] = "x", mp["uo"] = "o", mp["ao"] = "c";
  mp["ie"] = "p", mp["zh"] = "v", mp["ui"] = "v", mp["in"] = "b";
  mp["ong"] = "s", mp["iong"] = "s", mp["iao"] = "n", mp["ai"] = "d";
  mp["ian"] = "m";
  string s;
  string t;
  while (getline(cin, s)) {
    string str = "";
    stringstream ss(s);
    int x1 = 0;
    while (ss >> t) {
      if (x1)
        str += " ";
      else
        x1 = 1;
      int len = t.size();
      if (len == 1)
        str += t + t;
      else if (len == 2)
        str += t;
      else {
        if (t[0] == 'z' || t[0] == 's' || t[0] == 'c') {
          if (t[1] == 'h') {
            string a = "";
            for (int i = 0; i <= 1; i++) {
              a += t[i];
            }
            str += mp[a];
            if (len == 3)
              str += t[2];
            else {
              string a = "";
              for (int i = 2; i < len; i++) {
                a += t[i];
              }
              str += mp[a];
            }
          } else {
            string a = "";
            str += t[0];
            for (int i = 1; i < len; i++) {
              a += t[i];
            }
            str += mp[a];
          }
        } else {
          string a = "";
          str += t[0];
          for (int i = 1; i < len; i++) {
            a += t[i];
          }
          if (!mp.count(a))
            str += mp[t];
          else {
            str += mp[a];
          }
        }
      }
    }
    cout << str << endl;
  }
}


相关文章
|
C++
2019 第十届蓝桥杯大赛软件赛决赛,国赛,C/C++大学B组题解
2019 第十届蓝桥杯大赛软件赛决赛,国赛,C/C++大学B组题解
270 0
|
4月前
|
机器人 Java 编译器
2024年睿抗机器人开发者大赛(RAICOM)CAIP-编程技能赛-本科组省赛_题解
这篇文章是关于2024年睿抗机器人开发者大赛(RAICOM)CAIP-编程技能赛-本科组省赛的题解,作者分享了自己的得分和比赛经历,以及对比赛过程中出现问题的不满,同时提供了几道题目的解题思路和代码实现。
|
存储 编译器 C++
天梯赛备战(一)c++
天梯赛备战(一)c++
106 0
|
存储 iOS开发 容器
天梯赛备战(二)
天梯赛备战(二)
|
算法
第一届全国高校将计算机技能大赛知识点整理
第一届全国高校将计算机技能大赛知识点整理
188 0
|
存储 人工智能 安全
2020 第十一届蓝桥杯大赛软件赛省赛(第一场),C/C++大学B组题解
2020 第十一届蓝桥杯大赛软件赛省赛(第一场),C/C++大学B组题解
183 1
2020 第十一届蓝桥杯大赛软件赛省赛(第一场),C/C++大学B组题解
|
人工智能 iOS开发 Windows
(待补充)小蒟蒻的刷题成长之路-------中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛(同步赛)
(待补充)小蒟蒻的刷题成长之路-------中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛(同步赛)
136 0
|
存储 C++
2020 第十一届蓝桥杯大赛软件赛决赛,国赛,C/C++大学B组题解
2020 第十一届蓝桥杯大赛软件赛决赛,国赛,C/C++大学B组题解
129 0
|
C++
2020 第十一届蓝桥杯大赛软件赛省赛(第二场),C/C++大学B组题解
2020 第十一届蓝桥杯大赛软件赛省赛(第二场),C/C++大学B组题解
123 0
2020 第十一届蓝桥杯大赛软件赛省赛(第二场),C/C++大学B组题解