文章

10

粉丝

22

获赞

2

访问

4.3k

头像
等差序列 题解(小白易懂版):
P1491 北京航空航天大学2019年机试题
发布于2024年8月4日 14:38
阅读数 425

#### 有坑,题目的测试数据应该是要求一个数只能用一次,所以这里要借助一个标志位判断一下:

#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

bool is_prime(int n)
{
    if (n < 2) return false;
    for (int i = 2; i <= n / i; i ++)
        if (n % i == 0) return false;
    
    return true;
}

vector<int> prime;
vector<int> res;
bool used;


int main()
{
    int a, b;
    cin >> a >> b;
    
    for (int i = a; i <= b; i ++)
    {
        if (is_prime(i)) prime.push_back(i); 
    }
    
    for (int i = 1; i + 1< prime.size(); i ++)
    {
        if (!used) 
        {
            res.push_back(prime[i - 1]);
            res.push_back(prime[i]);
        }
        else 
        {
            i ++;
            res.push_back(prime[i - 1]);
            res.push_back(prime[i]);
            used = false;
        }
        
        
        int u = prime[i] - prime[i - 1];
        while(i + 1 < p...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发