您的位置:首页 > 编程语言 > C语言/C++

年龄问题C++

2018-03-06 00:16 211 查看

年龄问题

描述

今天蒜头君带着花椰妹和朋友们一起聚会,当朋友们问起年龄的时候,蒜头君打了一个哑谜(毕竟年龄是女孩子的隐私)说:“我的年龄是花椰妹年龄个位数和十位数之和的二倍”。

花椰妹看大家一脸懵逼,就知道大家也不知道蒜头君的年龄,便连忙补充道:“我的年龄是蒜头君个位数和十位数之和的三倍”。

请你计算:蒜头君和花椰妹年龄一共有多少种可能情况?

提醒:两位的年龄都是在 [10,100) 这个区间内。

#include<iostream>
#include<cmath>
using namespace std;
int main(){
int count=0;
for(int i=1;i<=9;i++){    //这里是十位,则要从1开始
for(int j=0;j<=9;j++){  //个位
if(10*i+j==3*((2*i+2*j)%10+(2*i+2*j)/10)){
//cout<<i<<j<<endl;
//输出的为花椰妹的年龄27,推出蒜头君的为18
count++;
}
}
}
cout<<count;
return 0;
}

/*
2(i+j)==n;   n为蒜头君
10*i+j==3*(n%10+n/10);   10*i+j是花椰妹
/*


也可以这样写(别的博主的算法)

这种算法更能容易看懂一点

#include <stdio.h>
int cnt=0;     //可能情况种数
int main()
{
int age1,age2;
int answer1,answer2;
for(age1=10;age1<100;age1++)
{
for(age2=10;age2<100;age2++)
{
answer1=(age2/10+age2%10)*2;
answer2=(age1/10+age1%10)*3;
if(answer1==age1 && answer2==age2)
{
cnt++;
}
}
}
printf("%d\n",cnt);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: