第九届省赛 c++ B组 填空题
import java.util.Scanner;
public class Main {
static int ji = 0;
static long f(long sum) {
if (sum % 10 == 0) {
sum /= 10;
ji++;
}
return sum;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
long a = 0;
for (int i = 0; i < 100; i++) {
long b = scanner.nextLong();
if (i == 0)
a = b;
else
a = f(a * b);
}
System.out.println(ji);
scanner.close();
}
}
第九届省赛 c++ C组 填空题
int sum = 1;
int num = 1;
for(int i = 2; i <= 100; i++){
num+=2;
sum+=num;
if(sum>=108){
System.out.println(i);
return;
}
}
public class Main {
public static void main(String[] args) {
for (int i = 1; ; i++) {
int sum = i; //用i表示香蕉的数量,因为后续会对i进行多次重新赋值,因此定义一个sum来接收i
if (sum % 5 == 1) {
sum = sum - 1 - sum / 5;//猴子会吃掉多余的并藏起自己那份
if (sum % 5 == 2) {
sum = sum - 2 - sum / 5;
if (sum % 5 == 3) {
sum = sum - 3 - sum / 5;
if (sum % 5 == 4) {
sum = sum - 4 - sum / 5;
if (sum % 5 == 0 && sum != 0) {//最后香蕉数量不能为0
System.out.println(i); //最后输出的应当是i的值
return;
}
}
}
}
}
}
}
}
第九届省赛 java B组 填空题
public class Main {
/*
以第一象限为例,遍历第一象限位于圈内的所有方格的右上角顶点(因为对这些方格而言,其右上角是最容易出圈的,如果它的右上角在圈内,那么这个方格一定在圈内),
若此点到原点的距离小于半径,则数目加一。最后数目乘以四得总数。
*/
public static void main(String[] args) {
int res = 0;
for (int i = 1; i <= 1000; i++) {
for (int j = 1; j <= 1000; j++) {
if (i * i + j * j <= 1000*1000) {
res++;
}
}
}
System.out.println(res * 4);
}
}
public static void main(String[] args) throws FileNotFoundException {
/*
大数类,文件输出
规定复数的乘法按照以下的法则进行:
设z1=a+bi,z2=c+di(a、b、c、d∈R)是任意两个复数,那么它们的积(a+bi)(c+di)=(ac-bd)+(bc+ad)i。
1.PrintStream ps=new PrintStream(new FileOutputStream(“C:\MyEclipse\file\ppp.txt”));
2.b.compareTo(BigInteger.ZERO)>0这句代码的意思是:b是否大于0
3.(b.compareTo(BigInteger.ZERO)>0?"+":"")+b:如果大于零b的前面就添加一个加号,否则b的前面就为空
如果不写这一行代码的话,当n的值等于2的时候,输出结果为:-512i而不是-5+12i
它的作用是,当一个数是整数时要加加号
*/
PrintStream ps = new PrintStream(new FileOutputStream("D:\\ppp.txt"));
System.setOut(ps); //文件输出
int n = 123456;
BigInteger a = new BigInteger("2");
BigInteger b = new BigInteger("3");
BigInteger a1 = new BigInteger("2");
BigInteger b1 = new BigInteger("3");
for (int i = 1; i < n; i++) {
BigInteger ta = a;
a = a.multiply(a1).subtract(b.multiply(b1));//a=a*a1-b*b1;
b = ta.multiply(b1).add(b.multiply(a1));//b=a*b1+b*a1