Java题目训练——不用加减乘除做加法和三角形

news/2025/1/15 15:10:49/

目录

一、不用加减乘除做加法

二、三角形


一、不用加减乘除做加法

题目描述:

写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。

数据范围:两个数都满足 -10<=n<=1000

进阶:空间复杂度 O(1),时间复杂度O(1)

示例

示例1

输入:1,2

输出:3

示例2

输入:0,0

输出:0

题目解析:

        本题要求不使用+,-,*,/实现加法,那我们首先想到的就是利用位运算符来实现,首先可以利用^(或)求得没有进位的相加结果,然后利用&(与)运算求得进位的位(需要左移一位),再次相加,直到进位结果为0,求得相加结果。

import java.util.*;
public class Solution {public int Add(int num1,int num2) {//没有加进位的和int add = num1;//进位int carry = num2;//进位while(carry != 0){int temp = add ^ carry;carry = (add & carry) << 1;add = temp;}return add;}
}

二、三角形

题目描述:

给定三条边,请你判断一下能不能组成一个三角形。

输入描述:

输入包含多组数据,每组数据包含三个正整数a、b、c(1≤a, b, c≤10^100)。

输出描述:

对应每一组数据,如果它们能组成一个三角形,则输出“Yes”;否则,输出“No”。

示例

输入:1 2 3

           2 2 2

输出:No

           Yes

题目解析:

        这道题我们只需要知道组成三角形的限制条件,然后根据这个条件进行判断即可。

        组成三角形的条件是:任意两边之和大于第三边;任意两边之差小于第三边。

        只要满足条件输出Yes,不满足输出No即可。

import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while (scanner.hasNext()){double a = scanner.nextDouble();double b = scanner.nextDouble();double c = scanner.nextDouble();isTriangle(a, b, c);}}public static void isTriangle(double a, double b, double c){if(a + b > c && Math.abs(a - b) < c ||a + c > b && Math.abs(a - c) < b ||b + c > a && Math.abs(b - c) < a){System.out.println("Yes");return;}System.out.println("No");}
}

如有建议或想法,欢迎一起学习讨论~


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

相关文章

Beta成果测试总结

Beta成果测试总结 Beta是一个项目的早期测试&#xff0c;通过 Beta能够初步的了解整个系统的稳定性&#xff0c;测试系统是否能够满足客户的需求。我们可以在测试过程中发现一些问题&#xff0c;从而快速解决。 当我们在测试一个新系统时&#xff0c;我们需要进行测试前的准备工…

部署LVS-DR 集群及实验

一、LVS-DR工作原理 LVS-DR&#xff08;Linux Virtual Server Director Server&#xff09;工作模式&#xff0c;是生产环境中最常用的一种工作模式。 #①LVS-DR 模式&#xff0c;Director Server 作为群集的访问入口&#xff0c;不作为网关使用&#xff1b; #②节点 Directo…

Node实现CSDN博客导出(后续)

前言 在2021年我实现了一个Node导出博客的功能&#xff1a;爬取接口及博客页面并导出为md文件格式。中途有许多迭代及优化以及解决了一些关键问题&#xff0c;写篇文章做个记录和review 博客更新功能 在原有的导出功能上增加了博客更新的功能&#xff0c;避免了每次都全部导…

Raft 共识算法1-Raft基础

Raft 共识算法1-Raft基础 Raft算法中译版地址&#xff1a;http://www.redisant.cn/etcd/contact 英原论文地址&#xff1a;https://raft.github.io/raft.pdf Etcd Assistant 是一款 etcd 可视化管理软件&#xff0c;便捷高效地操作您的 etcd 集群&#xff1b;支持多种键的视图&…

数字未来:世界正走向新的“破茧时刻”

著名科学史专家亚历山大柯瓦雷&#xff0c;在《从封闭世界到无限宇宙》展示了一段非常神奇的历史现象&#xff1a;人类从笃信自己生活在一个封闭空间&#xff0c;到认识浩瀚无垠的宇宙&#xff0c;其实并没有耗费很长时间。自1543年哥白尼发布《天体运行论》&#xff0c;到牛顿…

基于PWM技术的三相光伏逆变器研究(Simulink)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

5年了,终于入职阿里测试岗位,直接涨薪30K...

前言 本科毕业后就一直从事软件测试的工作&#xff0c;和多数人一样&#xff0c;最开始从事功能测试的工作&#xff0c;看着自己的同学一步一步往上走&#xff0c;自己还是在原地踏步&#xff0c;说实话这不是自己想要的状态。 一年半后开始沪漂生活&#xff0c;又摸爬滚打了…

【Golang开发入门】你真的会用Go写“Hello world“吗?

博主简介&#xff1a;努力学习的大一在校计算机专业学生&#xff0c;热爱学习和创作。目前在学习和分享&#xff1a;数据结构、Go&#xff0c;Java等相关知识。博主主页&#xff1a; 是瑶瑶子啦所属专栏: Go语言核心编程近期目标&#xff1a;写好专栏的每一篇文章 目录 一、Go项…