【java_蓝桥杯算法训练】算法训练二
饮料换购
资源限制
内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去(但不允许暂借或赊账)。
请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的n瓶饮料,最后他一共能喝到多少瓶饮料。
输入:一个整数n,表示开始购买的饮料数量(0<n<10000)
输出:一个整数,表示实际得到的饮料数
例如:
用户输入:
100
程序应该输出:
149
用户输入:
101
程序应该输出:
151
资源约定:
峰值内存消耗 < 256M
请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的n瓶饮料,最后他一共能喝到多少瓶饮料。
输入:一个整数n,表示开始购买的饮料数量(0<n<10000)
输出:一个整数,表示实际得到的饮料数
例如:
用户输入:
100
程序应该输出:
149
用户输入:
101
程序应该输出:
151
资源约定:
峰值内存消耗 < 256M
CPU消耗 < 1000ms
import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int k=n; int count=0; while(k>0) { k-=3; k++; count++; } System.out.println(n+count-1); } }
资源限制
内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
单词分析
问题描述
小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组成,有些单词很长,远远超过正常英文单词的长度。小蓝学了很长时间也记不住一些单词,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现得最多来分辨单词。
现在,请你帮助小蓝,给了一个单词后,帮助他找到出现最多的字母和这个字母出现的次数。
输入格式
输入一行包含一个单词,单词只由小写英文字母组成。
输出格式
输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪个。如果有多个字母出现的次数相等,输出字典序最小的那个。
第二行包含一个整数,表示出现得最多的那个字母在单词中出现的次数。
样例输入
lanqiao
Data
样例输出
a 2
Data
样例输入
longlonglongistoolong
Data
样例输出
o 6
Data
评测用例规模与约定
对于所有的评测用例,输入的单词长度不超过 1000。
import java.util.Scanner; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); String s=sc.next(); int arr[]=new int[26]; for(int i=0;i<s.length();i++) { char a=s.charAt(i); arr[a-97]++; } int max=arr[0]; int t=0; for(int i=0;i<arr.length;i++) { if(max<arr[i]) { max=arr[i]; t=i; } } System.out.println((char)('a'+(char)t)); System.out.println(max); } }
时间显示
资源限制
内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
import java.util.Scanner; public class Main { public static void main(String[] args) { // System.out.println(Long.MAX_VALUE); Scanner sc=new Scanner(System.in); // 3661 long log=sc.nextLong(); // long是毫秒 log/=1000; // 46800999 // 161****103123 // 一共的秒数 long day=log%(60*60*24); long h=day/(60*60); long m=(day-(h*3600))/60; day-=(h*3600); long n=day%60; // System.out.println(h); // System.out.println(m); // System.out.println(n); // System.out.println(h+":"+m+":"+n); // String h1,m1,n1; System.out.print(h<10 ?"0"+h+":":h+":"); System.out.print(m<10 ?"0"+m+":":m+":"); System.out.print(n<10 ?"0"+n:n); } }