加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

1.5编程基础之循环控制30:含k个3的数

(2018-06-03 10:56:33)
标签:

c学习

分类: openjudje刷题

 

1.5编程基础之循环控制

30:k3的数

总时间限制: 

1000ms

 

内存限制: 

65536kB

描述

输入两个正整数 m k,其中1 < m < 1000001 < k < 5 ,判断 m 能否被19整除,且恰好含有k3,如果满足条件,则输出YES,否则,输出NO 

例如,输入: 
43833 3
 
满足条件,输出YES

如果输入:
39331 3
 
尽管有33,但不能被19整除,也不满足条件,应输出NO

输入

m k 的值,中间用单个空格间隔。

输出

满足条件时输出 YES,不满足时输出 NO

样例输入

43833 3

样例输出

YES

 

全局题号

6673

添加于

2015-02-04

你的提交记录

#

结果

时间

2

Accepted

06-03

1

Wrong Answer

06-03

 

【思路】将数字变换成字符数组,再挨个比较

数字转字符串:使用sprintf()函数

char str[10];

int a=1234321;

sprintf(str,"%d",a);   //整数数字a转换到字符数组str

--------------------

char str[10];

double a=123.321;

sprintf(str,"%.3lf",a);  //浮点数字a转换到字符数组str

 

【代码】

#includeiostream

#includecstdio

#includecstring

char str[6];

using namespace std;

int main()

{

    int m,k,t=0;   

    cin>>m>>k;

       sprintf(str,"%d",m) ;

       for(int i=0;i<=5;i++)              

             if(str[i]=='3') t++;            //一定要注意数组的下标是0,从0,从0开始的

       if((m==0)&&(t==k)) cout<<"YES";

       else cout<<"NO";

       return 0;

}

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有