1、金币
https://www.lanqiao.cn/problems/357/learning/
解法:暴力
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
//在此输入您的代码...
int k = scan.nextInt();
int count = 1;
int sum = 0;
while(k > 0) {
for(int i = 0; i < count ; i++) {
if(k > 0) {
sum += count;
k--;
}
}
count++;
}
scan.close();
System.out.println(sum);
}
}
注意:要在for循环里面判断k是否还大于0,因为数字大了,k减着减着就可能不满足> 0 的条件了
2、天干地支
https://www.lanqiao.cn/problems/1029/learning/
解法:
十天干:甲乙丙丁戊己庚辛壬癸,顺序对应0到9十位数。
十二地支:子丑寅卯辰巳午未申酉戌亥,对应数字是0-11。
我们以2022年为例。公元年数先减三;就是2022减去3等于2019。除10余数是天干,就是2019除以10,余数是9.天干里第九位是壬。
然后基数改用十二除,就是说2022减3等于2019,2019除以12,余数是3。十二地支里第三位是寅。
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt() - 3;
String[] tiangan = { "", "jia", "yi", "bing", "ding", "wu", "ji", "geng", "xin", "ren", "gui" };
String[] dizhi = { "", "zi", "chou", "yin", "mao", "chen", "si", "wu", "wei", "shen", "you", "xu", "hai" };
String str = "";
// 天干
if (n % 10 == 0) {
str += tiangan[tiangan.length - 1];
} else {
str += tiangan[n % 10];
}
// 地支
if (n % 12 == 0) {
str += dizhi[dizhi.length - 1];
} else {
str += dizhi[n % 12];
}
System.out.println(str);
}
}