2015HW社招上机题(初级60分)

收银机:实现一个收银机的功能,输入应付金额和实付金额,输出钞票最少的找零方案。

环境是HW内部的oj,要求60分钟做两题,一题初级难度,一题中级难度。

解法:

import java.util.Scanner;

public class Main {
	public static void main(String[] args){
		Scanner cin = new Scanner(System.in);
		int a = cin.nextInt();
		int b = cin.nextInt();
		String result = computer(a, b);
		System.out.println(result);
	}

	public static String computer(int a,int b){

		int a1,a2,a3,a4,a5,m;
		int a11=0,a22=0,a33=0,a44=0,a55=0;
		if(b<a){
			return "null";
		}else if(b>=a){
			m = b-a;
				a1=m/50;
				a2=(m%50)/20;
				a3=(m%50%20)/10;
				a4=(m%50%20%10)/5;
				a5=m%50%20%10%5; 

				a11+=a1;
				a22+=a2;
				a33+=a3;
				a44+=a4;
				a55+=a5; 

		}
		if(50*a11+20*a22+10*a33+5*a44+1*a55>100){
			return "null";

		}
		return String.valueOf(a11)+String.valueOf(a22)+String.valueOf(a33)+String.valueOf(a44)+String.valueOf(a55);
	}

}

上面的代码通过oj的测试用例。

时间: 2024-10-10 16:56:12

2015HW社招上机题(初级60分)的相关文章

面试汇总——社招算法题篇

面试结果 总结下最近的面试: 头条后端:3面技术面挂 蚂蚁支付宝营销-机器学习平台开发: 技术面通过,年后被通知只有P7的hc 蚂蚁中台-机器学习平台开发: 技术面通过, 被蚂蚁HR挂掉(脉脉上好多人遇到这种情况,一个是今年大环境不好,另一个,面试尽量不要赶上阿里财年年底,这算是一点tips吧) 快手后端: 拿到offer 百度后端: 拿到offer 最终拒了百度,去快手了, 一心想去阿里, 个人有点阿里情节吧,缘分差点. 总结下最近的面试情况, 由于面了20多面, 就按照题型分类给大家一个总结

代码实现:利用条件运算符的嵌套来完成此题:学习成绩&gt;=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。

package com.heima.Coding; import java.util.Scanner; /*利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. 程序分析:(a>b)?a:b这是条件运算符的基本例子. */ public class Test05 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); Syste

利用条件运算符的嵌套来完成此题: 学习成绩&gt;= 90分的同学用A表示, 60-89分之间的用B表示, 60分以下的用C表示。

题目:利用条件运算符的嵌套来完成此题: 学习成绩>= 90分的同学用A表示, 60-89分之间的用B表示, 60分以下的用C表示. 程序分析:(a> b)?a:b这是条件运算符的基本例子. public class 第五题学生分数分级 { public static void main(String[] args) { System.out.print("请输入一个0-100的分数:"); Scanner in = new Scanner(System.in); int n

华为上机题汇总(六)

华为上机题汇总(六) 注:编译环境为Visual Studio 2012,答案仅供参考. 目录 华为上机题汇总六 目录 第二十六题 第二十七题 第二十八题 第二十九题 第三十题 第二十六题 26.一副牌中发五张扑克牌给你:让你判断数字的组成: 有以下几种情况: 1:四条:即四张一样数值的牌(牌均不论花色)2:三条带 一对 3:三条带两张不相同数值的牌 4:两对 5:顺子 包括 10,J,Q,K,A 6:什么都不是 7:只有一对 #include <iostream> #include <

回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议

其实本来真的没打算写这篇文章,主要是我得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的对话都给记下来.我自己当初面试完以后,除了记住一些聊过的知识点以外,具体的内容基本上忘得一干二净,所以写这篇文章其实是很有难度的. 但是,最近问我的人实在是太多了,为了避免重复回答,给自己省点力气,干脆就在这里统一回复了. 其实之前我写过一篇文章,但是那篇文章更多的是在讨论"面试前该不该刷题"这个话题,而这篇文章将会更加聚焦在面试前如何准备,以及工作当中如何学习这个话题上,而

华为上机题汇总(五)

华为上机题汇总(五) 注:编译环境为Visual Studio 2012,答案仅供参考. 目录 华为上机题汇总五 目录 第二十一题 第二十二题 第二十三题 第二十四题 第二十五题 第二十一题 21.通过键盘输入100以内正整数的加.减运算式,请编写一个程序输出运算结果字符串. 输入字符串的格式为:"操作数1 运算符 操作数2","操作数"与"运算符"之间以一个空格隔开. 补充说明: 1. 操作数为正整数,不需要考虑计算结果溢出的情况. 2. 若输

放手一搏:社招Java岗面试经历(三年经验): PingCAP、蚂蚁

前言 今年想出来看看机会,最后很幸运地拿到了 PingCAP,今日头条的 offer 以及蚂蚁金服的口头 offer.想着可以总结一下经验,分享一下自己这一段"骑驴找马"过的心路历程.当然,一家之言,难免粗浅,如有不妥,敬请指正. 全文有点长,假如只对一家公司感兴趣的话可以直接跳过去: 准备过程 我自己是本科毕业后在老东家干了三年多,老东家算是一家"小公司"(毕竟这年头没有 BAT 或 TMD 的 title 都不好意思报出身),毕业这两年多我也没有在大厂待过,因此

朋友的一年工作经验跳槽字节跳动社招经历分享(已拿offer)

虽然已经临近年末,但是还是萌生要看新机会的想法,主要的原因是觉得在目前的岗位上技术增长遇到的瓶颈,因此想去做一些更有挑战的工作.因为仍然准备继续在深圳工作,因此选定了三家公司,腾讯.字节跳动和 shopee,考虑的岗位方向仍然是后台开发(其他岗位也面不上呀,伤心).虽然年底跳拿不到年终奖了,但是我觉得和自己个人整个职业生涯的发展比起来算不了什么,最好的时机永远是当下. 准备 敲定了方向和目标后就开始系统准备,主要分为以下几个方面来准备. 算法题 事先已经看过别人的社招面经知道头条每轮技术面都有算

2014华为上机题(转)

1.第一题的题目大概是输入整型数组求数组的最小数和最大数之和,例如输入1,2,3,4则输出为5,当输入只有一个数的时候,则最小数和最大数都是该数,例如只输入1,则输出为2:另外数组的长度不超过50 #include<stdio.h> main() { intnum[50]={0}; inti,n; printf("请输入整型数组的长度(1~50):"); scanf("%d",&n); printf("请输入整型数组的元素:"