《网易编程题》计算糖果
題目描述
A,B,C三個(gè)人是好朋友,每個(gè)人手里都有一些糖果,我們不知道他們每個(gè)人手上具體有多少個(gè)糖果,但是我們知道以下的信息:
A - B, B - C, A + B, B + C. 這四個(gè)數(shù)值.每個(gè)字母代表每個(gè)人所擁有的糖果數(shù).
現(xiàn)在需要通過這四個(gè)數(shù)值計(jì)算出每個(gè)人手里有多少個(gè)糖果,即A,B,C。這里保證最多只有一組整數(shù)A,B,C滿足所有題設(shè)條件。
輸入描述:
輸入為一行,一共4個(gè)整數(shù),分別為A - B,B - C,A + B,B + C,用空格隔開。
范圍均在-30到30之間(閉區(qū)間)。
輸出描述:
輸出為一行,如果存在滿足的整數(shù)A,B,C則按順序輸出A,B,C,用空格隔開,行末無空格。
如果不存在這樣的整數(shù)A,B,C,則輸出No
示例1
輸入
1 -2 3 4
輸出
2 1 3
解析:該題目其實(shí)是個(gè)數(shù)學(xué)題,第一項(xiàng)加上第三項(xiàng)除以2可以計(jì)算出A,第二項(xiàng)加上第4項(xiàng)除以2可以計(jì)算出B,當(dāng)然這樣算出來的A、B不能是小數(shù),即便滿足可以整出,也要判斷糖果不能為負(fù)數(shù)
import java.util.Scanner;/*** Created by Administrator on 2017/8/12.*/ public class Main {public static String calculateApples(int [] arr){if(((arr[1]+arr[3])%2==0)&&(arr[0]+arr[2])%2==0){int B=(arr[1]+arr[3])/2;int A=B+arr[0];int C=B-arr[1];if(A<0||B<0||C<0){//糖果豈能為負(fù)數(shù)呢return "No";}return A+" "+B+" "+C;}return "No";}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while (scanner.hasNext()){int [] arr= new int[4];for(int i=0;i<4;i++){arr[i]=scanner.nextInt();}System.out.println(calculateApples(arr));}} }總結(jié)
以上是生活随笔為你收集整理的《网易编程题》计算糖果的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《网易编程题》买苹果
- 下一篇: 《好未来编程题》倒置字符串