1.P5718 【深基4.例2】找最小值
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i=0;i<arr.length;i++){
arr[i]=sc.nextInt();
}
Arrays.sort(arr);
System.out.print(arr[0]);
}
}
2.P5719 【深基4.例3】分类平均
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int k = sc.nextInt();
int sum1 = 0;
int sum2 = 0;
int number1 = 0;
int number2 = 0;
for (int i = 1;i < n+1;i++){
if(i % k ==0){
number1++;
sum1 += i;
}else {
number2++;
sum2 += i;
}
}
float average1 = sum1 / (float)number1;
float average2 = sum2 / (float)number2;
System.out.printf("%.1f %.1f",average1,average2);
}
}
3.P5720 【深基4.例4】一尺之棰
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int day = 1;
while(a!=1){
a/=2;
day++;
}
System.out.println(day);
}
}
4.P5721 【深基4.例6】数字直角三角形
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int column = n, number = 1;
for(int i = 0; i < n; i++){
for(int j = 0; j < column ; j++){
if(number < 10){
System.out.print("0" + number);
}else{
System.out.print(number);
}
number ++;
}
column --;
System.out.println();
}
}
}
5.P1009 [NOIP1998 普及组] 阶乘之和
import java.util.Scanner;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
BigInteger S = new BigInteger("0");
for (int i = n; i >= 1; i--) {
BigInteger a = new BigInteger("1");
for (int j = 1; j <= i; j++) {
a = a.multiply(BigInteger.valueOf(j));
}
S = S.add(a);
}
System.out.println(S);
}
}
6.P1980 [NOIP2013 普及组] 计数问题
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int x = sc.nextInt();
int count = 0;
for (int i=1;i<=n;i++) {
int temp = i;
while(temp != 0) {
if(temp%10 == x) {
count++;
}
temp /= 10;
}
}
System.out.println(count);
}
}
7.P1035 [NOIP2002 普及组] 级数求和
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int k = sc.nextInt();
double Sn = 0;
int n = 0;
while(Sn<k){
n++;
Sn += 1.0/n;
}
System.out.println(n);
}
}
8.P2669 [NOIP2015 普及组] 金币
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int k = sc.nextInt();
int g = 0;
for(int i=1;;i++){
if(k-i<=0){
g += k*i;
break;
}
k -= i;
g += i*i;
}
System.out.println(g);
}
}
9.P5722 【深基4.例11】数列求和
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int sum = 0;
for(int i=1;i<=n;i++) {
sum += i;
}
System.out.println(sum);
}
}
10.P5723 【深基4.例13】质数口袋
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int r = sc.nextInt();
int flag = 1;
int sum = 0;
int count = 0;
for(int i=2;sum+i<=r;i++) {
for(int j=2;j<i;j++) {
if(i%j==0){
flag = 0;
break;
}else {
flag = 1;
}
}
if(flag == 1){
System.out.println(i);
sum+=i;
count++;
}
}
System.out.println(count);
}
}
11.P1217 [USACO1.5] 回文质数 Prime Palindromes
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
if(a%2 == 0)
a++;
for(int i = a; i <= b; i+=2) {
if(hws(i) == true && zs(i) == true)
System.out.println(i);
}
}
public static boolean hws(int n) {
int a = n,b = 0;
while(a != 0) {
b = b * 10 + a % 10;
a /= 10;
}
if(b == n) {
return true;
}
return false;
}
public static boolean zs(int n) {
for(double i = 2; i <= Math.sqrt(n); i++) {
if(n%i == 0.0)
return false;
}
return true;
}
}
12.P1423 小玉在游泳
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double x = sc.nextDouble();
int p = 0;
double s = 0;
while(s<x) {
s += 2*Math.pow(0.98, p);
p++;
}
System.out.println(p);
}
}
13.P1307 [NOIP2011 普及组] 数字反转
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n =sc.nextInt();
int x=0,y=n;
while(y!=0) {
x = x*10 + y%10;
y=y/10;
}
System.out.println(x);
}
}
14.P1720 月落乌啼算钱(斐波那契数列)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n=sc.nextInt();
double num1=(1+Math.sqrt(5))/2;
double num2=(1-Math.sqrt(5))/2;
double sum=(Math.pow(num1,n)-Math.pow(num2,n))/Math.sqrt(5);
System.out.printf("%.2f",sum);
}
}
15.P5724 【深基4.习5】求极差 / 最大跨度值
import java.util.Arrays;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for(int i=0;i<n;i++) {
arr[i] = sc.nextInt();
}
Arrays.sort(arr);
int data = arr[n-1] - arr[0];
System.out.println(data);
}
}
16.P1420 最长连号
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int [] arr = new int[n];
for(int i=0;i<n;i++) {
arr[i] = sc.nextInt();
}
int k = 1;
int count = 0;
for(int i=0;i<arr.length-1;i++) {
if(arr[i+1]-arr[i]==1) {
k++;
}else {
k = 1;
}
if(k>count) {
count = k;
}
}
System.out.println(count);
}
}
17.P1075 [NOIP2012 普及组] 质因数分解
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
for(int i=2;i<n;i++) {
if(zs(i)) {
if(n%i==0) {
System.out.println(n/i);
break;
}
}
}
}
public static boolean zs(int n) {
if(n==2||n==3) {
return true;
}else {
int flag=0;
for(int i=2;i<Math.sqrt(n);i++) {
if(n%i==0) {
flag=1;
}
}
if(flag==1) {
return false;
}else {
return true;
}
}
}
}
18.P5725 【深基4.习8】求三角形
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int number = 1;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
System.out.printf("%02d", number++);
}
System.out.println();
}
System.out.println();
number = 1;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (n - i - 1 > j) {
System.out.printf(" ");
} else {
System.out.printf("%02d", number++);
}
}
System.out.println();
}
}
}
19.P5726 【深基4.习9】打分
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < arr.length; i++) {
arr[i] = sc.nextInt();
}
Arrays.sort(arr);
int sum = 0;
double average = 0;
for (int j = 1; j < arr.length - 1; j++) {
sum += arr[j];
}
average = (double) sum / (n-2);
System.out.printf("%.2f",average);
}
}
20.P4956 [COCI2017-2018#6] Davor
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int sum = n/52;
for (int k=1;;k++){
for (int x=100;x>0;x--){
if (7*x+21*k==sum){
System.out.println(x+"\n"+k);
break;
}
}
}
}
}
21.P1089 [NOIP2004 提高组] 津津的储蓄计划
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] arr = new int[12];
for(int i=0;i<12;i++){
arr[i] = sc.nextInt();
}
int budget=0,save=0,n=0,rest=0;
for(int i=0;i<12;i++){
budget = rest+300-arr[i];
if(budget<0){
System.out.println("-"+(i+1));
return;
}
else{
n = budget/100;
rest = budget-n*100;
if(rest>=0){
if(n>0){
save+=n*100;
}
}
}
}
double sum=0;
sum=save*1.2+rest;
System.out.printf("%.0f",sum);
}
}