笔试强训(八)

一. 求最小公倍数

题目链接:

https://nowcoder.com/practice/22948c2cad484e0291350abad86136c3?tpId=37&tqId=21331&ru=/exam/oj

cpp 复制代码
#include <iostream>
using namespace std;

int gcd(int a, int b)
{
    if(b == 0) return a;
    return gcd(b, a % b);
}

int main()
{
    int a, b;
    cin >> a >> b;
    cout << (a * b / gcd(a, b)) << endl;
    return 0;
}

二.数组中的最长连续子序列

题目链接:

https://www.nowcoder.com/practice/eac1c953170243338f941959146ac4bf?tpId=196&tqId=37143&ru=/exam/oj

cpp 复制代码
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * max increasing subsequence
     * @param arr int整型vector the array
     * @return int整型
     */
    int MLS(vector<int>& arr) {
        // write code here
        sort(arr.begin(), arr.end());
        int n = arr.size(), ret = 0;
        for (int i = 0; i < n;)
        {
            int j = i + 1, count = 1;
            while (j < n)
            {
                if (arr[j] - arr[j - 1] == 1)
                {
                    count++;
                    j++;
                }
                else if (arr[j] - arr[j - 1] == 0)
                {
                    j++;
                }
                else
                {
                    break;
                }
            }
            ret = max(ret, count);
            i = j;
        }

        return ret;
    }
};

三.字母收集

题目链接:

https://www.nowcoder.com/practice/9740ce2df0a04399a5ade1927d34c1e1?tpId=230&tqId=38954&ru=/exam/oj

cpp 复制代码
#include<iostream>

using namespace std;
int dp[505][505];
int main()
{
	int n, m;
	cin >> n >> m;
	char a[n][m];
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < m; j++)
		{
			cin >> a[i][j];
		}
	}
	
	for (int i = 1; i <= n; i++)
	{
		for (int j = 1; j <= m; j++)
		{
			dp[i][j] = max(dp[i - 1][j], dp[i][j - 1]);
			if (a[i-1][j-1] == 'l')
			{
				dp[i][j] += 4;
			}
			else if (a[i-1][j-1] == 'o')
			{	
				dp[i][j] += 3;
			}
			else if (a[i-1][j-1] == 'v')
			{
				dp[i][j] += 2;
			}
			else if (a[i-1][j-1] == 'e')
			{
				dp[i][j] += 1;
			}
		}
	}
	cout << dp[n][m] << endl;
	return 0;
}
相关推荐
一去不复返的通信er2 小时前
力扣-图论-岛屿数量
算法·leetcode·图论
2501_944521592 小时前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
0+1112 小时前
Linux --从 poll 到 epoll多路转接
linux·服务器·1024程序员节
行思理2 小时前
go语言学习难度及适合学习的人群
开发语言·学习·golang
阿狸猿3 小时前
论零信任安全架构在信息系统中的应用
1024程序员节
念何架构之路3 小时前
Go reflect 场景实战
1024程序员节
知已难寻4 小时前
第 2 篇 · 云的地基:服务器、存储、网络三大基础设施
运维·服务器·网络·云原生·云计算·负载均衡·1024程序员节
wangchunyu1144 小时前
JAVA CompletableFuture异步编程实战
java·开发语言·python
初阳7854 小时前
【基于Qt5仿音乐播放器(六)】——细节打磨与总结
qt·1024程序员节
程序 代码狂人5 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法