- 博客(53)
- 问答 (1)
- 收藏
- 关注
原创 PAT BASIC 1010
思路:这个题两个点: 1.输入需要靠EOF来判断,我们的std::cin也是有返回值的,所以我们可以用来判断是否输入while(cin>>co>>ex){ //}2.如果答案没有的话,输出0 0 代码:#include<iostream>using namespace std;struct Num{ int co; int ex;}num[2017], ans[2017
2017-02-07 11:43:32
316
原创 PAT BASIC 1009
思路:这是个字符串的题,我们利用getline(cin,str); 这个函数按行把整句话都输入进来。然后用str.size() 函数得到整个字符串的长度。然后扫一遍找到每个空格的位置,之后就可以通过空格的位置把单词一个个倒序输出来。注意头尾的边界上的细节问题。 代码:#include<iostream>#include<string>using namespace std;string st
2017-02-06 23:39:26
437
原创 PAT BASIC 1008
思路:这个题题意表达得可能没那么清楚,如果说要求只能开O(N)的数组,时间复杂度也是O(N),那就是一个比较有趣的题。我们可以用三次反转的方法来思考这个题。如果说我要把xy这个字符串的y字串移到x子串的左边,变成yx,我记x^T为将x反转,如果x=”abc”,那么x^T=”cba”。这样,这里就有一个比较有意思的式子了yx=(x^T y^T)^T也就是说我们只需要进行三次反转,就可以实现我的操作。时
2017-02-06 23:19:09
308
原创 PAT BASIC 1006
思路:此题,很简单,over。 不要把BS打成bs,我就这么wa了一次。 代码#include<iostream>using namespace std;int main(){ int n, i; cin >> n; while (n >= 100) { n -= 100; cout << "B"; } while (n >= 10) {
2017-02-06 21:51:47
268
原创 PAT BASIC 1005
思路:给1~100的数做一个state标记数组state[1]=1;state[i]=0; //i!=1每个数进来之后都做那个1001操作,遇到state[i]==1的情况停止,否则都将state[i]赋值为1; 需要注意的一点就是state数组一定要开的大,虽然说n最大是100,但是我开了1000的数组依然出错了。 代码:#include<iostream>using namespac
2017-02-06 21:42:19
228
原创 PAT BASIC 1004
思路:此题是比较简单的一个模拟题,两个struct类型的变量分别记录第一名和最后一名,另一个变量输入,每次输入就判断并更新第一名和最后一名的信息。 代码:#include<iostream>#include<string>using namespace std;struct Student{ string name; string id; int score;};int ma
2017-02-06 20:44:11
265
原创 PAT BASIC 1007
思路:此题没有什么特别要注意的点,就是先用筛法求出n一下所有的素数,然后线性判断相邻的差是否为2 代码:#include<iostream>#include<math.h>using namespace std;int state[100001];int prime[20000];void findPrime(int n);void findPrime(int n){ int
2017-02-06 19:56:15
441
原创 PAT BASIC 1003
注意点1、其实就是要求P之前的A的数量乘以PT之间A的数量等于T之后A的数量 2、注意PT中间等于零的情况 3、注意PT两个字母:必须P在T之前出现,各有且仅有一次 代码#include<iostream>#include<string>using namespace std;void checkPAT();void checkPAT(){ string str; int po
2017-02-06 19:04:11
311
原创 pat basic 1002
写出这个数 (20)读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10100。 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。输入样例: 1234567890987654321123456789输出样例: yi san wu题目大意:输
2017-02-05 14:00:24
280
原创 pat basic 1001 解题报告样例
1001. 害死人不偿命的(3n+1)猜想 (15)时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CHEN, Yue卡拉兹(Callatz)猜想:对任何一个自然数n,如果它是偶数,那么把它砍掉一
2017-02-05 12:22:12
354
原创 win32编程笔记
//获取窗口尺寸(画对角线)GetClientRect(hWnd, &rect);MoveToEx(hdc, rect.left, rect.top, NULL);LineTo(hdc, rect.right, rect.bottom);//数组点相连POINT apt[4] = { 100, 100, 200, 100, 200, 200, 100, 200 };
2017-01-08 12:54:26
653
原创 cout格式化输出
1.小数位数可以使用setprecision()来确定小数位数,加fixed补充末位的0需要添加头文件#include<iomanip>假设 ans=1.202; 以下是保留两位小数,若末尾是0,则省略cout << setprecision(2) << ans <<endl;//输出1.2若想不省略末尾的0,则需要加上fixedcout.setf(ios::fixed);cout << fix
2017-01-07 19:10:12
457
原创 PAT advanced 1001
A+B Format (20)Calculate a + b and output the sum in standard format – that is, the digits must be separated into groups of three by commas (unless there are less than four digits).InputEach input file
2017-01-07 16:45:51
420
空空如也
Mocha中写测试代码,then里面的断言无法正常执行
2020-03-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅