PAT乙级
pessiboy
头号混子,会点C++,会点python,会点java。
展开
-
PAT-1007 1007 素数对猜想 (20分)
知识点讲解请参考博客(精心写了几个小时,总结很认真了,请认真看一看呀)最暴力的写法:#include <iostream>using namespace std;bool isprime(int a){ for(int k=2;k*k<=a;k++){ if(a%k==0) return false; } return true;}int main(){ int N; cin>>N; //把素数筛出来.原创 2020-08-10 22:57:05 · 100 阅读 · 0 评论 -
PAT-1019 数字黑洞 (20分)
昨晚4.27,更应该说是今天早上的一点看到这道题目的。是一道常规的题目:当时晚上躺床上了思路也是这样的:算法的步骤如下:(1):输入数字,定义数组(这里假设为arr),定义最大最小值(2):定义函数,实现操作:将数字上的每一位放到数组。(3):求最小MIN.–>对上面的数组去排序,但是不设置cpm是降序的,设置函数实现:降序数组的求和求最大MAX.–>对上面的数组去排序,...原创 2020-04-28 09:46:26 · 167 阅读 · 0 评论 -
PAT-1023组个最小数
讲解:注释里面也讲了,其实也算是贪心吧。贪心里面的有前提。第一个数不为0.设一个循环找出来,然后break掉代码如下:#include <iostream>using namespace std;int main(){ int count[10];//用来计入数位 for(int i=0;i<10;i++){ cin>>co...原创 2020-04-24 15:02:44 · 129 阅读 · 0 评论 -
PAT-1036和奥巴马一起编程
以下的分析真的是帮你手把手写代码了!:希望能耐心地去读一下图形编程:还是稍微分析一下吧:(其实最重要的就是边界处理,可以先用纸先去画一下)这个输出的次数是有范围的,先管头和尾。头和尾的区间范围是:[1,col]。第一行输出要换行然后就是中间了。其实记住一个口诀:外面的循环管行,里面的循环管列。那么就很容易分析了:比如一开始输出的N为10,那么出去头尾,那中间的行应该是3.那么第一层...原创 2020-04-24 14:26:58 · 144 阅读 · 0 评论 -
PAT-1001害死人不偿命的(3n+1)猜想 (15分)
题目描述****水题,不再多说:#include <stdio.h>int main(){ int n,count; scanf("%d",&n); while(n!=1){ if(n%2==0){ n=n/2; }else{ n=(3*n+1)/2; ...原创 2020-04-24 14:08:07 · 101 阅读 · 0 评论 -
PAT-1020月饼 (25分)
这个问题属于贪心算法,其实对贪心算法不要那么害怕。不过是学术名来冠名的而已。举一个生活的例子。在生活区你去菜市场买菜,在质量保证的情况下,你总是买最便宜的,那么你买的菜一定是所有人最便宜的,算是每一步都是最优。言归正传:关于这题月饼的题目。计算出单价,只要保证每一次都是单价最高的,那么最终的收入额肯定也是最高的。分析过程如下:开辟结构数组存储等级不同的月饼。通过排序,得到每种月饼的单价,...原创 2020-04-24 14:01:45 · 230 阅读 · 0 评论