• abc -- 牛客


    题目描述

    设a、b、c均是0到9之间的数字,abc、bcc是两个三位数,且有:abc+bcc=532。求满足条件的所有a、b、c的值。

    输入描述:

    题目没有任何输入。

    输出描述:

    请输出所有满足题目条件的a、b、c的值。 a、b、c之间用空格隔开。 每个输出占一行。


    解题思路

    一、暴力破解

    直接遍历循环找出符合条件的a,b,c 

    注意起始条件,a,b分别作为百位数,故从1开始遍历。

     1 #include <stdio.h>
     2 int main()
     3 {
     4     int a,b,c;
     5     for(int a = 1;a<=9;a++)
     6       for(int b = 1;b<=9;b++)
     7           for(int c = 0;c<=9;c++)
     8               if(a*100+b*10+c + b*100+c*10+c == 532)
     9                   printf("%d %d %d",a,b,c);
    10   
    11 }

    二、我解题的时候,不是用的暴力法,而是使用该题的特点,直接算出答案。

    abc + bcc = 532 

    从个位数算,c = 1 或者 c =6 只有这俩种情况

    按位分开讨论,不需要遍历!直接排除c = 6 的情况,即算出a,b,c的值。

  • 相关阅读:
    反射和内置方法重写
    封装
    接口与抽象类 、多态
    面向对象--继承和组合
    python对象
    模块导入
    python序列化模块
    time random sys os 模块
    python re模块和collections
    python各种推导式
  • 原文地址:https://www.cnblogs.com/jiashun/p/newcode8.html
Copyright © 2020-2023  润新知