题目要求:

输入参数:参数A,含有任意个数的?的数值字符串,如:12?4,?代表一位任意数
             参数B,不含?的数值字符串,长度与参数A一致
输出结果:参数A比参数B大的可能数值个数

输入样例
36?1?8
236428
8?3
910
?
5

输出样例
100
0
4

  1. #define num_max_length 20
  2. int main(void)
  3. {
  4. char num1[num_max_length];
  5. char num2[num_max_length];
  6. int result_temp=0, result=0;
  7. int num_length=0, num_index=0;
  8. int flag=0;
  9. while(1){
  10. memset(num1, 0, num_max_length);
  11. memset(num2, 0, num_max_length);
  12. result_temp=0;
  13. result = 0;
  14. flag = 0;
  15. printf("参数A:");
  16. fgets(num1, num_max_length, stdin);
  17. if(memcmp(num1, "end", 3)==0) break;
  18. printf("参数B:");
  19. fgets(num2, num_max_length, stdin);
  20. if(memcmp(num2, "end", 3)==0) break;
  21. if((num_length=strlen(num1))!=strlen(num2)){
  22. printf("num1 num2 length not match\n");
  23. break;
  24. }
  25. for(num_index=0; num_index<num_length; num_index++){
  26. if(num1[num_index]=='?'){
  27. if(flag == 0)
  28. result_temp = (int)('9'-num2[num_index])+result_temp*10;
  29. else
  30. result_temp = result_temp*10;
  31. }
  32. else{
  33. if(num1[num_index]==num2[num_index]){
  34. continue;
  35. }
  36. else if(num1[num_index]<num2[num_index]){
  37. //break;
  38. if(flag == 0){
  39. flag = 1;
  40. }
  41. }
  42. else{
  43. if(flag == 0){
  44. flag = 1;
  45. result_temp += 1;
  46. }
  47. }
  48. }
  49. }
  50. printf("参数A比参数B大有%d种可能\n", result_temp);
  51. }
  52. printf("用户终止程序\n");
  53. system("pause");
  54. return 0;
  55. }

CSDN第四届在线编程大赛2014初赛:带通配符的数的更多相关文章

  1. 【思考题】CSDN第四届在线编程大赛2014初赛:带通配符的数

    题目要求: 输入参数:参数A,含有任意个数的?的数值字符串,如:12?4,?代表一位任意数                     参数B,不含?的数值字符串,长度与参数A一致 输出结果:参数A比参数 ...

  2. [转]微软联合CSDN英雄在线编程大赛

    2014 新年将至,微软联合CSDN英雄会共同举办本次第三届在线编程大赛,题目详情如下: 有一个字符串"iinbinbing",截取不同位置的字符‘b’.‘i’.‘n’.‘g’组合 ...

  3. csdn第五届在线编程大赛-全然平方

    题目详情 给定整数区间[A,B]问当中有多少个全然平方数. 输入格式: 多组数据,包括两个正整数A,B 1<=A<=B<=2000000000. 输出格式: 每组数据输出一行包括一个 ...

  4. 算法与数据结构(2)--英雄会第三届在线编程大赛:几个bing

    基础知识的回顾不再写到这里面了,会写一些算法算法的解答或者读一些相关书籍的笔记. 今天做了一道算法题,来自微软必应·英雄会第三届在线编程大赛:几个bing? 做出来了...但不知道为啥执行测试用例失败 ...

  5. 第四届58topcoder编程大赛--地图路径规划

    layout: post title: 第四届58topcoder编程大赛 subtitle: 58ACM catalog: true tags: - A* 算法 - C++ - 程序设计 问题及背景 ...

  6. 庞果英雄会第二届在线编程大赛·线上初赛:AB数

    题目链接 给定两个正整数a,b,分别定义两个集合L和R, 集合L:即把1~a,1~b中整数乘积的集合定义为L = {x * y | x,y是整数且1 <= x <=a , 1 <= ...

  7. Python超级码力在线编程大赛初赛题解

    P1 三角魔法 描述小栖必须在一个三角形中才能施展魔法,现在他知道自己的坐标和三个点的坐标,他想知道他能否施展魔法 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后, ...

  8. 微软必应·英雄会第三届在线编程大赛:几个bing?

    发布公司:微软亚太研发集团 有 效 期:2013-12-31至2014-02-01 难 度 等 级: 答 题 时 长:120分钟 编程语言要求:C C++ Java C# 悬赏详情 一等奖 : 价值2 ...

  9. 【结果发布】第六届SeedCoder编程大赛初赛结果发布

    微软俱乐部科技文化月seedcoder2014编程大赛已经初审完成. 评审小组选出最棒的作品进入决赛(现场答辩+陈述环节,由评委现场打分).终于排名由"初赛分数+现场答辩分"决定. ...

随机推荐

  1. 【KMP+DP】Count the string

    KMP算法的综合练习 DP很久没写搞了半天才明白.本题结合Next[]的意义以及动态规划考察对KMP算法的掌握. Problem Description It is well known that A ...

  2. CodeForces 242E - XOR on Segment 二维线段树?

    今天练习赛的题....又是线段树的变换..拿到题我就敲了个点更新区间查询的..果断超时...然后想到了可以将每个数与合表示成不进位的二进制数..这样就可以区间进行更新了..比赛的时候写搓了..刚重写了 ...

  3. 共享IP云主机(VPS)玩转wdcp

    目前国内有不少性能还不错的共享IP VPS,但因为没有独立IP,所以环境配置起来会比较麻烦. 因为本人自己现在用的就是共享IP的vps,所以把一些配置方法分享一下,供大家参考. 首先是系统的选择,根据 ...

  4. 高性能 Socket 组件 HP-Socket v3.2.1-RC4 公布

    HP-Socket 是一套通用的高性能 TCP/UDP Socket 组件,包括服务端组件.client组件和 Agent 组件,广泛适用于各种不同应用场景的 TCP/UDP 通信系统,提供 C/C+ ...

  5. 论js闭包的重要性

    很久没写博客了,今天发现了一个很有意思的问题,写下来分享一下 话不多说,贴前端代码: <script type="text/javascript" src="js/ ...

  6. WPF控件---Border应用

    内容模型:Border 只能具有一个子元素.若要显示多个子元素, 需要将一个容器元素放置在父元素Border中. <Grid> <Border BorderBrush="B ...

  7. 解决操作过快导致ajax异常的办法

    //控制点击过快ajax异常 var state = true; function test() { if (state) { state = false; var val = accMul((uCo ...

  8. Android material design support library -- CollapsingToolbarLayout简介

    本文是codetrick上material design support library教程的第三篇,主要讲的是CollapsingToolbarLayout的概念和应用方法. 原文链接:Materi ...

  9. MVC路由规则以及前后台获取Action、Controller、ID名方法

    1.前后台获取Action.Controller.ID名方法 前台页面:ViewContext.RouteData.Values["Action"].ToString(); Vie ...

  10. angularjs中关于ng-if的一些理论

    ng-if简介: ● 使用ng-if指令可以完全根据表达式的值在DOM中生成或移除一个元素.如果赋值给ng-if 的表达式的值是false,那对应的元素将会从DOM中移除,否则对应元素的一个克隆将被重 ...