c++版369寝室

news/2025/2/5 8:12:14/

描述:369 寝室是比较特殊的寝室,因为别的寝室都住了四个人,而 369 寝室只有三个人。也因为这个原因,寝室里的三位同学感情特别好。但是,毕业在即,三位小伙伴马上要分别。为了在未来的某个日子可以见面,三位小伙伴有了一个约定,假设在未来的某一年,三位小伙伴的年龄的末尾正好出现 3、6、9 三个数,那么他们会再次相聚。 问题来了,假设今年三位小伙伴的年龄分别是 x,y,z,那么,他们三人最早几年后可以相聚呢?

输入:输入数据包括三个整数 x,y,z,分别表示三位伙伴的年龄。

输出:如果小伙伴最早在 n 年后可以相见(不包括当前这一年),那么请输出 n;如果不存在这样的情况,输出:'so sad!'

样例:输入:25 22 28。输出:1

今天同学让我做这道题,一开始低估了,以为SO EASY,结果……真是SO SAD!

还好终于做出来了(不知道对不对),希望可以帮到同学

思路:

先把有两个重复数字的数据删去,输出so sad!,然后直接退出程序(不用函数!!)

测试数据:12 12 12     12 12 13

再把每个数的个位取出,判断是否等于3,6,9并且另外1、2个数不等于3,6,9

测试数据:13 14 17      13 56 78

再把某个值求出来(没办法解释它到底是个啥),并逐个判断个位是否为3,6,9

测试数据:12 16 20      12 18 24

最后则是输出再见年份

测试数据:12 15 18       25 142 238(用来测试百、十位不同的情况,虽然很夸张……)

代码:

#include<bits/stdc++.h>
using namespace std;
int x,y,z,x1,y_1,z1,cnt=0,flag=1;
int a,b,c,a_b,b_c,a_c,asd,bsd,csd;
int main(){cin>>x>>y>>z;if(x==y){cout<<"so sad!"<<endl;flag=0;return 0;}if(y==z){cout<<"so sad!"<<endl;flag=0;return 0;}if(z==x){cout<<"so sad!"<<endl;flag=0;return 0;}a=x%10;b=y%10;c=z%10;if(a!=3&&a!=6&&a!=9){if(b==3||b==6||b==9){cout<<"so sad!"<<endl;flag=0;return 0;}else if(b!=3&&b!=6&&b!=9){if(c==3||c==6||c==9){cout<<"so sad!"<<endl;flag=0;return 0;}}}else if(a==3||a==6||a==9){if(b!=3&&b!=6&&b!=9){cout<<"so sad!"<<endl;flag=0;return 0;}else if(b==3||b==6||b==9){if(c!=3&&c!=6&&c!=9){cout<<"so sad!"<<endl;flag=0;return 0;}}}a_b=max(a,b)-min(a,b);b_c=max(b,c)-min(b,c);a_c=max(a,c)-min(a,c);asd=max(a_b,b_c)-min(a_b,b_c);bsd=max(b_c,a_c)-min(b_c,a_c);csd=max(a_c,a_b)-min(a_c,a_b);if(asd%10!=3&&asd%10!=6&&asd%10!=0&&bsd%10!=3&&bsd%10!=6&&bsd%10!=0&&csd%10!=3&&csd%10!=6&&csd%10!=0){flag=0;cout<<"so sad!"<<endl;return 0;}while(flag==1){x++;y++;z++;cnt++;x1=x%10;y_1=y%10;z1=z%10;if(x1==3){if(y_1==6){if(z1==9)flag==0;cout<<cnt;return 0;}if(y_1==9){if(z1==6)flag==0;cout<<cnt;return 0;}}else if(x1==6){if(y_1==3){if(z1==9)flag==0;cout<<cnt;return 0;}if(y_1==9){if(z1==3)flag==0;cout<<cnt;return 0;}}else if(x1==9){if(y_1==3){if(z1==6)flag==0;cout<<cnt;return 0;}if(y_1==6){if(z1==3)flag==0;cout<<cnt;return 0;}}}return 0;
}

显然很长(大佬帮忙优化😅)

如有错误,请及时指出~~


http://www.ppmy.cn/news/8903.html

相关文章

第二个岳云鹏,跨年晚会含泪主持,成为一道最靓丽的风景

中国人自古讲究&#xff1a;百善孝入先&#xff0c;尤其是对于娱乐圈的明星来说&#xff0c;孝心和爱心更是他们成功的根本。 在这方面&#xff0c;德云社的小岳岳走在了前列&#xff0c;他用自己的孝心和爱心感动了粉丝&#xff0c;也收获了无数的鲜花和掌声。小岳岳的爱心体现…

【学习】domain adaptation、BERT

文章目录一、domain adaptation领域适应domain shiftdomain adversarial training![在这里插入图片描述](https://img-blog.csdnimg.cn/26ef051b6a6148cbadb2dc6a9067fce2.png)domain generalization二、自监督学习多语言BERT的跨语言能力交叉学科能力用人工数据进行预训练一、…

信息数智化招采系统源码——信息数智化招采系统

​ 信息数智化招采系统 服务框架&#xff1a;Spring Cloud、Spring Boot2、Mybatis、OAuth2、Security 前端架构&#xff1a;VUE、Uniapp、Layui、Bootstrap、H5、CSS3 涉及技术&#xff1a;Eureka、Config、Zuul、OAuth2、Security、OSS、Turbine、Zipkin、Feign、Monitor、…

计算机视觉实战----AlexNet网络及使用colab跑YoloV5代码

系列文章目录 文章目录系列文章目录前言一、用colab薅羊毛二、使用百度飞浆操作三、二、使用步骤1.引入库2.读入数据总结前言 一、用colab薅羊毛 Colaboratory 简称“Colab”&#xff0c;是 Google Research 团队开发的一款产品。在 Colab 中&#xff0c;任何人都可以通过浏览…

React-Router6路由相关一(路由的基本使用、重定向、NavLink·、路由表、嵌套路由)(七)

系列文章目录 第一章&#xff1a;React基础知识&#xff08;React基本使用、JSX语法、React模块化与组件化&#xff09;&#xff08;一&#xff09; 第二章&#xff1a;React基础知识&#xff08;组件实例三大核心属性state、props、refs&#xff09;&#xff08;二&#xff0…

Docker进阶(中)

docker 进阶&#xff08;中&#xff09;docker提交镜像等命令docker 镜像原理docker 私有库&推送到私有库容器数据卷docker 安装常规软件docker提交镜像等命令 再这个谈这个docker 提交这个镜像之前我们先补充一下上一篇博客没有谈到的命令。再这里说一下。我们之前谈到的…

剑指offer----C语言版----第七天

目录 1. 旋转数组中的最小数字 1.1 题目描述 1.2 思路一 1.3 思路二 1.4 小试牛刀 1. 旋转数组中的最小数字 原题链接&#xff1a; 剑指 Offer 11. 旋转数组的最小数字 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/xuan-zhuan-shu-zu-de-zui-xiao-…

WebGL及Threejs学习介绍

一、学习背景及实现的效果 这十年来Web得到了飞速的发展&#xff0c;随着WebGL的普及&#xff0c;网页的表现能力越来越强大&#xff0c;网页上已经可以开始做出很多复杂的动画、精美的效果&#xff1b;还能通过WebGL在网页中绘制高性能的3d图形。随着浏览器的性能和网络、带宽…