zoukankan      html  css  js  c++  java
  • Codeforces Beta Round #17 A

    A - Noldbach problem

    题面链接

    http://codeforces.com/contest/17/problem/A

    题面

    Nick is interested in prime numbers. Once he read about Goldbach problem. It states that every even integer greater than 2 can be expressed as the sum of two primes. That got Nick's attention and he decided to invent a problem of his own and call it Noldbach problem. Since Nick is interested only in prime numbers, Noldbach problem states that at least k prime numbers from 2 to n inclusively can be expressed as the sum of three integer numbers: two neighboring prime numbers and 1. For example, 19 = 7 + 11 + 1, or 13 = 5 + 7 + 1.

    Two prime numbers are called neighboring if there are no other prime numbers between them.

    You are to help Nick, and find out if he is right or wrong.

    输入

    The first line of the input contains two integers n (2 ≤ n ≤ 1000) and k (0 ≤ k ≤ 1000).

    输出

    Output YES if at least k prime numbers from 2 to n inclusively can be expressed as it was described above. Otherwise output NO.

    题意

    问你在[2,n]里面是否至少有k个质数由1+两个相邻的素数组成呢?

    题解

    直接暴力模拟就好了嘛

    代码

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn = 1005;
    int pri[maxn],n,k;
    void pre()
    {
        pri[0]=1,pri[1]=1;
        for(int i=2;i<maxn;i++){
            if(pri[i])continue;
            for(int j=i+i;j<maxn;j+=i)
                pri[j]=1;
        }
    }
    int main()
    {
        pre();
        scanf("%d%d",&n,&k);
        int ans = 0;
        for(int i=2;i<=n;i++){
            if(pri[i])continue;
            int flag = 0;
            for(int j=2;j<i;j++){
                if(pri[j])continue;
                for(int k=j+2;k+j<=i;k++){
                    if(!pri[k]&&!pri[j]&&k+j==i-1)
                        flag = 1;
                    if(!pri[k])break;
                }
            }
            if(flag)ans++;
        }
        if(ans>=k)cout<<"YES"<<endl;
        else cout<<"NO"<<endl;
    }
  • 相关阅读:
    二维数组中的查找
    排序算法——冒泡、选择、插入
    排序算法——快速、归并
    最小的K个数
    重建二叉树
    反转链表
    LeetCode 278 第一个错误的版本
    LeetCode 929 独特的电子邮件地址
    LeetCode 38 报数
    模型参数初始化
  • 原文地址:https://www.cnblogs.com/qscqesze/p/6169840.html
Copyright © 2011-2022 走看看