PAT(B) 101-111-1-2014-03-01
Posted jhcelue
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT(B) 101-111-1-2014-03-01相关的知识,希望对你有一定的参考价值。
1.个位数统计:
#include<stdio.h> #include<iostream> #include<string.h> #include<set> #include<vector> #include<map> #include<math.h> #include<queue> #include<string> #include<stdlib.h> #include<algorithm> using namespace std; char s[1005]; int n, a[10]; int main(){ while(gets(s)) { memset(a, 0, sizeof a); for(int i = 0; s[i]; i++) a[s[i]-'0']++; for(int i = 0; i < 10; i++) if(a[i]) printf("%d:%d\n",i,a[i]); } return 0; }
2. D进制的A+B (20)
#include<stdio.h> #include<iostream> #include<string.h> #include<set> #include<vector> #include<map> #include<math.h> #include<queue> #include<string> #include<stdlib.h> #include<algorithm> using namespace std; #define ll long long int D[1000]; ll a,b,d; int main(){ while(~scanf("%lld %lld %lld",&a,&b,&d)) { ll c = a+b; int top = 0; while(c) { D[top++] = c%d; c/=(ll)d; } if(top==0)D[top++] = 0; for(int i = top-1; i >= 0; i--) printf("%d", D[i]); puts(""); } return 0; }
#include<stdio.h> #include<iostream> #include<string.h> #include<set> #include<vector> #include<map> #include<math.h> #include<queue> #include<string> #include<stdlib.h> #include<algorithm> using namespace std; int a[10]; int main(){ while(~scanf("%d",&a[0])) { bool fir = false; for(int i = 1; i < 10; i++) { scanf("%d",&a[i]); if(a[i] && fir==false) { a[i]--; fir = true; printf("%d",i); } } for(int i = 0; i < 10; i++) while(a[i]--)printf("%d",i); puts(""); } return 0; }
#include<stdio.h> #include<iostream> #include<string.h> #include<set> #include<vector> #include<map> #include<math.h> #include<queue> #include<string> #include<stdlib.h> #include<algorithm> using namespace std; char s[10005]; vector<int>G; void put(){for(int i = 0; i < G.size(); i++)printf("%d",G[i]);} int main(){ while(gets(s)) { G.clear(); if(s[0]=='-')printf("-"); G.push_back(s[1]-'0'); int i = 3; for(; s[i]!='E'; i++) G.push_back(s[i]-'0'); int add = s[++i]=='-'? 1 : -1; int num = 0; for(i++; s[i]; i++) num = num*10 + s[i]-'0'; num *= add; num += (G.size()-1); if(num>=(int)G.size()) { printf("0."); num--; while(num>=G.size())printf("0"), num--; for(i = 0; i < G.size(); i++) printf("%d",G[i]); } else { for(i = 0; i < G.size(); i++) { if(num == G.size()-i)printf("."); printf("%d",G[i]); } } while(num<0)printf("0"), num++; puts(""); } return 0; }
以上是关于PAT(B) 101-111-1-2014-03-01的主要内容,如果未能解决你的问题,请参考以下文章