PAT-1005 Spell It Right (20)
2018-02-18 21:46
477 查看
题目大意:求给串的各位数之和,然后按照规定输出 和的各位。
解题思路:都很简单,唯一要注意的细节是 样例 0 的情况。
题目链接:https://www.patest.cn/contests/pat-a-practise/1005#include <iostream>
#include <algorithm>
#include <set>
#include <map>
#include <vector>
#include <stack>
#include <queue>
#include <cmath>
using namespace std;
void trans(int x)
{
switch(x)
{
case 1:printf("one");break;
case 2:printf("two");break;
case 3:printf("three");break;
case 4:printf("four");break;
case 5:printf("five");break;
case 6:printf("six");break;
case 7:printf("seven");break;
case 8:printf("eight");break;
case 9:printf("nine");break;
case 0:printf("zero");break;
}
}
int main(int argc, char** argv) {
char str[105];
stack<int> s;
int sum = 0;
scanf("%s",str);
for(int i=0;str[i]!='\0';++i)
{
sum += str[i]-'0';
}
do{
s.push(sum%10);
sum /= 10;
}while(sum != 0);
bool flag = true;
while(!s.empty())
{
if(flag == true)
{
trans(s.top());
flag = false;
}
else
{
cout<<" ";
trans(s.top());
}
s.pop();
}
cout<<endl;
return 0;
}
解题思路:都很简单,唯一要注意的细节是 样例 0 的情况。
题目链接:https://www.patest.cn/contests/pat-a-practise/1005#include <iostream>
#include <algorithm>
#include <set>
#include <map>
#include <vector>
#include <stack>
#include <queue>
#include <cmath>
using namespace std;
void trans(int x)
{
switch(x)
{
case 1:printf("one");break;
case 2:printf("two");break;
case 3:printf("three");break;
case 4:printf("four");break;
case 5:printf("five");break;
case 6:printf("six");break;
case 7:printf("seven");break;
case 8:printf("eight");break;
case 9:printf("nine");break;
case 0:printf("zero");break;
}
}
int main(int argc, char** argv) {
char str[105];
stack<int> s;
int sum = 0;
scanf("%s",str);
for(int i=0;str[i]!='\0';++i)
{
sum += str[i]-'0';
}
do{
s.push(sum%10);
sum /= 10;
}while(sum != 0);
bool flag = true;
while(!s.empty())
{
if(flag == true)
{
trans(s.top());
flag = false;
}
else
{
cout<<" ";
trans(s.top());
}
s.pop();
}
cout<<endl;
return 0;
}
相关文章推荐
- PAT1005. Spell It Right (20)
- PAT-Java-1005-Spell It Right (20)
- PAT (Advanced Level) 1005. Spell It Right (20) string转int,哈希
- PAT甲级1005. Spell It Right (20)
- PAT (Advanced Level) 1005. Spell It Right (20)
- PAT (Advanced Level) 1005. Spell It Right (20)
- PAT1005. Spell It Right (20)
- PAT---1005. Spell It Right (20)
- PAT (Advanced Level) 1005. Spell It Right (20) 解题报告
- PAT (Advanced Level) Practise - 1005. Spell It Right (20)
- PAT: 1005. Spell It Right (20)
- 【PAT】1005. Spell It Right (20)
- 【PAT】【Advanced Level】1005. Spell It Right (20)
- pat 1005. Spell It Right (20)
- PAT(Advanced Level)1005. Spell It Right (20) 栈 int转string
- [PAT]1005. Spell It Right (20)@Java
- PAT 1005. Spell It Right (20)
- [PAT]1005. Spell It Right (20)
- 【c++】PAT (Advanced Level) 1005. Spell It Right (20)
- 【PAT Advanced Level】1005. Spell It Right (20)