Day02

一、单词分析

单词分析

1.代码

#include <iostream>
using namespace std;
int a[30] = { 0 }; //用来存放每个单词出现的次数
int main()
{
  string b; //一行单词
  cin >> b; 
  for(int i = 0; i < b.length(); i++) {
    a[b[i] - 'a']++;
  }
  int max = 0;
  int count = -1;
  for(int i = 0; i < 26; i++) {
    if(a[i] > max) {
      max = a[i];
      count = i;
    }
  }
  cout << char(count + 'a') << endl << a[count] << endl;
  return 0;
}

2. 问题

  • 关于string的一些用法,如求长度可以用.length()、string重载了[]可以像操作数组一样进行操作

二、填空题

1. 一个有无图包含 2020 条边,如果图中没有自环和重边,请问最少包含多少个结点?

答案是:65

无向完全图边和节点之间的关系:边 = 点 * (点 - 1) / 2

所以解题 n * (n - 1) = 2020, 得到64点几,所以最小为65

2.一个包含 2020 个结点的无向图,如果图中没有自环和重边,最多包含多少条边?

https://www.lanqiao.cn/problems/578/learning/

解题同上

三、公约数

公约数

1.代码

#include <iostream>
using namespace std;
int main()
{
  int count = 0;
  for(int i = 1; i <= 1010; i++) {
    if((2020 % i == 0) && (3030 % i == 0)) {
      count++;
    }
  }
  cout << count << endl;
  return 0;
}

2.问题

  • %:除以0是没有意义的,i应该从1开始

  • i可以到1010结束,不用到2020

四、受伤的皇后

受伤的皇后

posted @ 2021-03-11 19:42  Jerry_京  阅读(26)  评论(0)    收藏  举报