精华内容
下载资源
问答
  • 1013 数素数 输入样例: 5 27 输出样例: 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 代码如下 import math def prime(n): if n==2: return True else: half = math.ceil...

    1013 数素数

    在这里插入图片描述

    输入样例:

    5 27

    输出样例:

    11 13 17 19 23 29 31 37 41 43

    47 53 59 61 67 71 73 79 83 89

    97 101 103

    代码如下

    import math
    def prime(n):
        if n==2:
            return True
        else:
            half = math.ceil(math.sqrt(n))
            count = 1
            for i in range(1,half+1):
                if n%i==0:
                    count+=1
            if count==2 :
                return True
            else:
                return False
    
    m,n = map(int,input().split(' '))
    num = 0
    prime_count = []
    
    a=2
    while num != n:
        if prime(a):
            num+=1
            prime_count.append(a)
        a+=1
    
    prime_count = prime_count[m-1:]
    count = 0
    row = 0
    for i in prime_count:
    
        if count!=9 and (row*10+count)!= len(prime_count)-1:
            print(i,end=' ')
            count+=1
        else:
            print(i)
            count=0
            row +=1
    

    得分

    在这里插入图片描述

    展开全文
  • 1013Harvest 我用的是C语言来完成的,其实用指针可能会方便一些,鉴于不太会用指针,所以我避开了这个知识点。 我在思路上碰到的一些小坎坷: 1、搞不清楚轻重: 一定要知道不论是高还是低,都是按照右边的秤而言的...

    1013Harvest
    我用的是C语言来完成的,其实用指针可能会方便一些,鉴于不太会用指针,所以我避开了这个知识点。
    我在思路上碰到的一些小坎坷:
    1、搞不清楚轻重:
    一定要知道不论是高还是低,都是按照右边的秤而言的,如果左边秤中某一美元有问题,秤相对高,就说明,左边秤有问题的美元偏重。
    2、漏用条件:
    很难表达,例子来凑:
    ABCDEF GHIJKL up
    ABC DEF even
    I J down
    仔细推算,这组数据I偏轻,但是真的用程序运行,给出的结果很有可能是GHIKL偏轻,当然也有的人是G偏轻。先不看结果是否正确,GHIKL偏轻确实符合这三个例子的要求。这样说,可能就发现问题了,GHKL偏轻确实符合要求,但是如果这样的话,第三个例子就没有用到了。
    以上为在思路上碰到的问题。
    我编写程序碰到的一些小坎坷:
    1、读入数据:
    (1)字符串中空格后的数据都读不进去,因而左边、右边以及结果需要分开读入;
    (2)最好用 memset 把数据清0,避免读取错误;
    (3)开数组的时候要注意数据大小,不要只看到例子中给定的数据大小,这道题的读入数据有大有小,并不固定。
    2、读取给定样例中左边或右边有多少字符:
    数组开的是二维数组。
    以上为编写程序遇到的问题。

    #include<stdio.h>
    #include<string.h>
    int m[3];//读取每行左边或右边美元个数
    int num[13];
    char r[3][13];
    char l[3][13];
    char res[3][5];
    int sflag(int i);
    int main()
    {
        int i,j,k,h;
        int flag;
        scanf("%d",&k);
        for(h=0; h<k; h++)
        {
            memset(m,0,sizeof(m));
            memset(num,0,sizeof(num));
            memset(r,'0',sizeof(r));
            memset(l,'0',sizeof(l));
            memset(res,'0',sizeof(res));
            for(i=0; i<3; i++)//输入相应字符串
            {
                scanf("%s",l[i]);
                scanf("%s",r[i]);
                scanf("%s",res[i]);
            }
            for(i=0; i<3; i++)//每一行有多少个字符
            {
                j=0;
                while(l[i][j]>='A'&&l[i][j]<='L')
                {
                    m[i]++;
                    j++;
                }
            }
            for(i=0; i<3; i++)//找出可能有问题的字符
            {
                if(res[i][0]=='e')
                {
                    for(j=0; j<m[i]; j++)
                    {
                        num[l[i][j]-'A']=1;
                        num[r[i][j]-'A']=1;
                    }
                }
                if(res[i][0]=='u'||res[i][0]=='d')
                {
                    for(j=0; j<m[i]; j++)
                    {
                        if(num[l[i][j]-'A']!=1)
                            num[l[i][j]-'A']=2;
                        if(num[r[i][j]-'A']!=1)
                            num[r[i][j]-'A']=2;
                    }
                }
            }
            for(i=0; i<13; i++)
            {
                if(num[i]==2)
                {
                    flag=sflag(i);
                    if(flag==1)
                    {
                        printf("%c is the counterfeit coin and it is heavy.\n",'A'+i);
                    }
                    if(flag==0)
                    {
                        printf("%c is the counterfeit coin and it is light.\n",'A'+i);
                    }
                }
            }
        }
        return 0;
    }
    int sflag(int i)
    {
        int count,count1,count2;
        int j,a;
        count=count1=count2=0;
        int flag=2;
        for(j=0; j<3; j++)
        {
            if(res[j][0]!='e')
                count++;
            for(a=0; a<m[j]; a++)
            {
                if(r[j][a]=='A'+i)
                {
                    if(res[j][0]=='d')
                    {
                        count1++;
                        break;
                    }
                    if(res[j][0]=='u')
                    {
                        count2++;
                        break;
                    }
                }
                if(l[j][a]=='A'+i)
                {
                    if(res[j][0]=='u')
                    {
                        count1++;
                        break;
                    }
                    if(res[j][0]=='d')
                    {
                        count2++;
                        break;
                    }
                }
            }
        }
        if(count1==count)
            flag=1;
        if(count2==count)
            flag=0;
        return flag;
    }
    

    写的比较繁琐,但是容易理解。有什么问题的话希望大家能够指出来,谢谢啦。

    展开全文
  • 1013 数素数 (20 分) 令 P​i表示第 i 个素数。现任给两个正整数 M≤N≤10^4​​ ,请输出 PM 到 P​N​ 的所有素数。 输入格式: 输入在一行中给出 M 和 N,其间以空格分隔。 输出格式: 输出从 PM到 P​N的所有...

    1013 数素数 (20 分)

    令 P​i表示第 i 个素数。现任给两个正整数 M≤N≤10^4​​ ,请输出 PM 到 P​N​ 的所有素数。

    输入格式:

    输入在一行中给出 M 和 N,其间以空格分隔。

    输出格式:

    输出从 PM到 P​N的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。

    输入样例:

    5 27

    输出样例:

    11 13 17 19 23 29 31 37 41 43
    47 53 59 61 67 71 73 79 83 89
    97 101 103

    解题思路

    C++版

    把从2开始的数遍历一下,在判断的过程种记录下一共有多少个满足条件的素数和该行输出了几个数,然后根据记录的数字进行相应的处理即可

    #include<iostream>
    #include<stdlib.h>
    
    using namespace std;
    
    bool deal(int n)
    {
    	for(int i = 2; i*i <= n; i++ )
    	{
    		if(n % i == 0)
    			return false;
    	}
    	return true;
    }
    
    int main()
    {
    	int n,m;
    	cin>>n>>m;
    	int time = 0,time1 = 0;
    	for(int i = 2; time != m; i++ )
    	{
    		if(deal(i))
    		{
    			time++;
    			if(time >= n )
    			{
    				cout<<i;
    				time1++;
    				if(time != m)
    					if(time1 < 10)
    						cout<<' ';
    					else
    					{
    						cout<<'\n';
    						time1 = 0;
    					}
    			}	
    		}	
    	}
    
    	system("pause");
    	return 0;
    }
    
    
    展开全文
  • 解析:这道题我的思路就是素数遍历一遍存到集合中,在从M-N的顺序遍历一遍存着素数的集合。整体不难,难点在需要遍历进集合的素数该有多少,题目给的是N>...public class Pta_1013 { public static void...

    在这里插入图片描述
    解析:这道题我的思路就是素数遍历一遍存到集合中,在从M-N的顺序遍历一遍存着素数的集合。整体不难,难点在需要遍历进集合的素数该有多少,题目给的是N>=10的4次方,这是素数集合里的索引,所以我们要遍历进集合的素数就应该更多,不然会有测试点4过不去。我也是尝试很多次才确定这个值,有点坑。

    public class Pta_1013 {
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            int M = scanner.nextInt();
            int N = scanner.nextInt();
            List<Integer> list = new ArrayList<Integer>();
            List<Integer> list2 = new ArrayList<Integer>();
            //添加素数
            for (int i = 2; i < 120000 ; i++) {//素数范围要更大一些
                if (isprime(i)) {
                    list.add(i);
                }
            }
            for (int i = M-1; i <N; i++) {
                list2.add(list.get(i));
            }
            for(int i=1;i<=list2.size();i++){
                System.out.print(list2.get(i-1));
                if(i==list2.size()){
                    break;
                }
                if(i%10!=0){
                        System.out.print(" ");
    
                }else{
                    System.out.println();
                }
    
            }
        }
    
        static boolean isprime(int i) {
            for (int j = 2; j <= Math.sqrt(i); j++) {
                if (i % j == 0) {
                    return false;
                }
            }
            return true;
        }
    }
    
    展开全文
  • 1013 C基础-求偶数和 import java.util.*; import java.io.*; import java.math.BigInteger; public class Main { public static void main(String args[]) { Scanner sc=new Scanner(Syst...
  • /* Memory: 100K Time: 16MS */ #include &lt;stdio.h&gt; #include &lt;string.h&... 假设存在A-L 12枚硬币 现在需要称重三次进行求解 每次称重时输入两组硬币组进行称重 然...
  • 1013 数素数 (20分) 令 P​i 表示第 i 个素数。现任给两个正整数 M≤N≤10​4​​ ,请输出 P​M 到 PN 的所有素数。 输入格式: 输入在一行中给出 M 和 N,其间以空格分隔。 输出格式: 输出从 P​M 到 P​N ​​ ...
  • 1013

    2016-07-02 11:14:01
    题意: 车票的价格决定于两个站点之间的距离。给出了描述距离和价钱之间关系的表格。求花费最少 思路: 用Floyd算法,借鉴了网上的算法,他们用的是_int64...代码: #include #include #include using namespac
  • 筛选代码 #include<stdio.h> const int maxn = 1000001; int Prime[maxn], pNum = 0; bool p[maxn] = { 0 }; void Find_Prime(int n) { for (int i = 2; i < maxn; i++) { if (p[i] == fa...
  • 1013数素数 (20)(20分) 令P~i~表示第i个素数。现任给两个正整数M <= N <= 10^4^,请输出P~M~到P~N~的所有素数。 输入格式: 输入在一行中给出M和N,其间以空格分隔。 输出格式: 输出从P~M~到P~N~的...
  • def prime(n,result): flag = [1]*(n+2) ...最后的if(i+2)%10==0,这边开始不在for循环内部,那这段代码是什么意思? 这边的i是for循环执行结束的i吗?理论上i不是应该只在for循环内部吗?不太懂
  • R-Enthusiasts:一个共享和改进代码的空间,供领域1013的现场科学人员使用
  • 数素数 (20分) PATJava代码实现 暴力求解
  • 1013 数素数 令 P​i 表示第 i 个素数。现任给两个正整数 M≤N≤10​4,请输出 PM 到 P​N 的所有素数。 输入格式: 输入在一行中给出 M 和 N,其间以空格分隔。 输出格式: 输出从 P​M 到 PN​​ 的所有素数,每 ...
  • https://www.patest.cn/contests/pat-b-practise/1013 令Pi表示第i个素数。现任给两个正整数M 4,请输出PM到PN的所有素数。 输入格式: 输入在一行中给出M和N,其间以空格分隔。 输出格式: 输出...
  • 暴力代码 #include<stdio.h> const int maxn = 1000010; //第10的4次方个素数有多大未知,将测试上限maxn设置的大一些(超过n 个素数后会中断不会影响复杂度)或者先用程序测试一下10 的4次方的素数氏多少...
  • RPG girls今天和大家一起去游乐场玩,终于可以坐上梦寐以求的过山车了。可是,过山车的每一排只有两个座位,而且还有条不成文的规矩,就是每个女生必须找个个男生做partner和她同坐。但是,每个女孩都有各自的想法,...
  • 1013 数素数 (20分) 令 P**i 表示第 i 个素数。现任给两个正整数 M≤N≤104,请输出 P**M 到 P**N 的所有素数。 输入格式: 输入在一行中给出 M 和 N,其间以空格分隔。 输出格式: 输出从 P**M 到 P**N 的所有素数...
  • 立志用最少的代码做最高效的表达 PAT甲级最优题解——>传送门 It is vitally important to have all the cities connected by highways in a war. If a city is occupied by the enemy, all the highways from...
  • PAT1013

    2016-01-30 21:38:20
    1013. Battle Over Cities (25)时间限制 400 ms内存限制 65536 kB代码长度限制 16000 B判题程序 Standard 作者 CHEN, YueIt is vitally important to have all the cities connected by highways in a war....
  • 1013 数素数 这道题的核心还是快速找素数,我个人的思路是先创建一个足够大的数组(其中至少有一万个素数),然后先将这些数的质合判断出来,最后再根据输入的范围输出相应的质数。 具体代码实现如下: import ...
  • accode1013

    2019-11-09 20:00:04
    Hi大家好,今天纬翔继续给大家带来代码! accode1013: #include<cstdio> int main() { int a,b,c,d; scanf("%d %d %d %d",&a,&b,&c,&d); printf("%d",(a+b)*(c-d)); return 0; } 想获取...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 790
精华内容 316
关键字:

代码1013