第七届蓝桥杯 有奖猜谜
有奖猜谜
小明很喜欢猜谜语。
最近,他被邀请参加了X星球的猜谜活动。
每位选手开始的时候都被发给777个电子币。
规则是:猜对了,手里的电子币数目翻倍,
猜错了,扣除555个电子币, 扣完为止。
小明一共猜了15条谜语。
战果为:vxvxvxvxvxvxvvx
其中v表示猜对了,x表示猜错了。
请你计算一下,小明最后手里的电子币数目是多少。
请填写表示最后电子币数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
问题分析
该题很简单,直接对数字进行乘法或减法运算即可。使用Scanner.next().toCharArray()方法获取一个字符串输入并将其转换字符数组,然后遍历该字符数组执行对应乘或减的操作即可。
代码
import java.util.Scanner;
public class Main {
public static void main(String[] args){
int s = 777; //初始分数
Scanner sc = new Scanner(System.in);
//输入 vxvxvxvxvxvxvvx
char[] c = sc.next().toCharArray();
//遍历
for(int i = 0; i< 15; i++){
if(c[i] == 'v'){
s *= 2;
}
else if(c[i] == 'x'){
s -= 555;
}
}
System.out.println(s);
sc.close();
}
}
运行结果:
58497
如对该博客有意见或建议,欢迎留言或私信我^ _ ^
本文介绍了一个基于蓝桥杯比赛的猜谜游戏算法案例。通过分析比赛规则,利用Java实现了一种简单的猜谜游戏算法,计算参赛者在猜谜过程中的得分变化。文章详细展示了算法的实现步骤,包括读取输入、根据猜谜结果更新得分,并最终输出得分。此案例适合初学者理解算法的基本应用。
1758

被折叠的 条评论
为什么被折叠?



