PTA中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题
2018-04-02 21:48
405 查看
orz我是渣渣,只能发点这些小水题了,就这些题还写了我好一会的呢QAQ,不开森,渣渣做的小水题就直接贴代码了吧。
自测题 1 打印沙漏 题目可以点链接直接进去的,这道题渣渣刷过好多次了,基础中的基础题,但又一次碰到时还是编了半小时QAQ,我想要变成大佬orz 貌似废话有点多 hhhhh 自嘲下啦,我是要变成大佬的渣渣辉。
orz 不说废话了 (^o^)/~
自测题 2 素数对猜想
自测题 3 数组元素循环右移问题
自测题 4 Have Fun with Numbers
自测题 5 Shuffling Machine
自测题 1 打印沙漏 题目可以点链接直接进去的,这道题渣渣刷过好多次了,基础中的基础题,但又一次碰到时还是编了半小时QAQ,我想要变成大佬orz 貌似废话有点多 hhhhh 自嘲下啦,我是要变成大佬的渣渣辉。
#include <stdio.h> #include <math.h> int main() { int n,i,j,k,sum=0; char c; scanf("%d %c",&n,&c); if(n>=1) { i=sqrt(2*n+2)/2-1; sum=2*i*i+4*i+1; for(k=i;k>=0;k--) { for(j=0;j<i-k;j++) printf(" "); for(j=0;j<2*k+1;j++) printf("%c",c); printf("\n"); } for(k=1;k<=i;k++) { for(j=i-k;j>0;j--) printf(" "); for(j=2*k+1;j>0;j--) printf("%c",c); printf("\n"); } printf("%d\n",n-sum); } else printf("0\n"); return 0; }
orz 不说废话了 (^o^)/~
自测题 2 素数对猜想
#include <stdio.h> #include <math.h> bool fun(int n) { for(int i=2;i<=sqrt(n);i++){ if(n%i==0) return false; } return true; } int main() { int n,i,count=0,q=0; scanf("%d",&n); int a[10000],b[10000]; for(i=2;i<=n;i++) if(fun(i)) { a[q]=i; q++; } for(i=0;i<q;i++) { b[i]=a[i+1]-a[i]; if(b[i]==2) count++; else continue; } printf("%d\n",count); return 0; }
自测题 3 数组元素循环右移问题
#include <stdio.h> int main() { int a[105]; int N,M,i,j,k,temp=0; scanf("%d %d",&N,&M); for(i=0;i<N;i++) { scanf("%d",&a[i]); } for(j=0;j<M;j++) { temp=a[N-1]; for(k=N-1;k>=0;k--) { a[k]=a[k-1]; if(k==0) a[k]=temp; } } for(i=0;i<N;i++) { if(i==N-1) printf("%d",a[i]); else printf("%d ",a[i]); } return 0; }
自测题 4 Have Fun with Numbers
#include <cstdio> #include <cstring> #include <map> using namespace std; char s[25], r[25]; map<int, int> sm, rm; int main() { gets(s+1); int len = strlen(s+1); for (int i = len; i > 0; --i){ ++sm[s[i] - '0']; r[i] += (s[i] - '0') * 2; if (r[i] >= 10){ ++r[i-1]; r[i] -= 10; } ++rm[r[i]]; } if (r[0] > 0){ ++rm[r[0]]; } printf("%s\n", (rm == sm) ? "Yes":"No"); if (r[0] > 0) printf("%d", r[0]); for (int i = 1; i <= len; ++i){ printf("%d", r[i]); } printf("\n"); return 0; }
自测题 5 Shuffling Machine
#include<iostream> void OutputWord(int a) { int flag = a/13; if(0 == flag) printf("S"); else if(1 == flag) printf("H"); else if(2 == flag) printf("C"); else if(3 == flag) printf("D"); else if(4 == flag) printf("J"); printf("%d", a%13+1); } #define NUM 54 int main() { int n; int s[NUM]; int a[NUM]; while( scanf("%d", &n) != EOF ) { for(int i = 0; i < NUM; ++i) { a[i] = i; scanf("%d", &s[i]); } //shuffling while(n--) { int a_back[NUM]; for(int i = 0; i < NUM; ++i) a_back[i] = a[i]; for(int i = 0; i < NUM; ++i) a[s[i]-1] = a_back[i]; } //output for(int i = 0; i < NUM; ++i) { OutputWord(a[i]); //printf("%d", a[i]); if(i != NUM-1) printf(" "); else printf("\n"); } } return 0; }
相关文章推荐
- 中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题&代码
- 中国大学MOOC-陈越、何钦铭-数据结构-起步能力自测题 自测-1 打印沙漏
- PTA中国大学MOOC-陈越、何钦铭-数据结构-2017春课后作业03树1 树的同构
- 中国大学MOOC-陈越、何钦铭-数据结构:06-图3 六度空间(链式前向星、BFS)
- 中国大学MOOC-陈越、何钦铭-数据结构-2016秋期末考试
- 中国大学MOOC-陈越、何钦铭-数据结构-2015秋02-线性结构1题解
- 中国大学MOOC-陈越、何钦铭-数据结构-2015秋 03-树3 Tree Traversals Again (25分)
- 【中国大学MOOC-陈越、何钦铭-数据结构-2017秋】最大子列和问题
- 中国大学MOOC-陈越、何钦铭-数据结构-2017春
- 中国大学MOOC-陈越、何钦铭-数据结构 一元多项式的乘法与加法运算
- 中国大学MOOC-陈越、何钦铭-数据结构-2017春期中考试
- 中国大学MOOC-陈越、何钦铭-数据结构 File Transfer
- 02-线性结构1 两个有序链表序列的合并——中国大学MOOC-陈越、何钦铭-数据结构-2017秋
- 中国大学MOOC-陈越、何钦铭-数据结构 Insertion or Heap Sort
- 中国大学MOOC-陈越、何钦铭-数据结构-2016秋期中考试
- 中国大学MOOC-陈越、何钦铭-数据结构 Root of AVL Tree
- 中国大学MOOC-陈越、何钦铭-数据结构-2017秋03-树3 Tree Traversals Again(25 point(s))
- 中国大学MOOC-陈越、何钦铭-数据结构 堆中的路径
- 中国大学MOOC-陈越、何钦铭-数据结构 列出连通集
- 中国大学MOOC-陈越、何钦铭-数据结构-2017秋 03-树1 树的同构(25 point(s))