CCF CSPブラシ質問レコード9-201509-1番号シーケンスセグメンテーション(java)、201509-2日付計算(java)

質問番号: 201509-1
質問名: シーケンスのセグメンテーション
制限時間: 1.0秒
メモリ制限: 256.0MB
問題の説明:

問題の説明

  整数のシーケンスが与えられた場合、シーケンス内の整数の最も長い連続したシーケンスが1つのセグメントとしてカウントされます。シーケンス内にはセグメントがいくつありますか?

入力フォーマット

  入力の最初の行には、シーケンス内の整数の数を表す整数nが含まれています。
  2行目は含まnは整数1、  2、...、  数字の所定の配列を表し、隣接する整数がスペースで区切られています。

出力フォーマット

  指定されたシーケンスに複数のセグメントがあることを示す整数を出力します。

入力例

8
8 8 8 0 12 12 8 0

出力例

5

サンプル概要

  8 8 8は最初の段落、0は2番目の段落、12 12は3番目の段落、最後から2番目の整数8は4番目の段落、最後の0は5番目の段落です。

評価のユースケースの規模と規則

  1≤  N  ≤≤1000,0   ≤1000。

 

import java.util.Scanner; 
public class 数列分段 {

	public static void main(String[] args) {
		
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int[] a=new int[n];
		for(int i=0;i<n;i++){
			a[i]=sc.nextInt();
		}
		int res=0;
		for(int i=0;i<n-1;i++){
			if(a[i+1]!=a[i]){
				res++;
			}
		}
		System.out.println(res+1);
	}

}
質問番号: 201509-2
質問名: 日付計算
制限時間: 1.0秒
メモリ制限: 256.0MB
問題の説明:

問題の説明

  年yと整数dが与えられた場合、d- dayの最初の年がその月の日であることを尋ねますか?
  うるう年の2月には29日あることに注意してください。うるう年とは、次のいずれかの条件を満たすうるう年です
  。1)年は4の整数倍であり、100の整数倍ではありません
  。2)年は400の整数倍です。

入力フォーマット

  输入的第一行包含一个整数y,表示年份,年份在1900到2015之间(包含1900和2015)。
  输入的第二行包含一个整数dd在1至365之间。

输出格式

  输出两行,每行一个整数,分别表示答案的月份和日期。

样例输入

2015
80

样例输出

3
21

样例输入

2000
40

样例输出

2
9

 

import java.util.Scanner; 
public class 日期计算 {

	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		int y=sc.nextInt();
		int d=sc.nextInt();
		int total;
		if(d<=31){
			System.out.print("1"+"\n"+d+"\n");
		}else{
			if(y%400==0||(y%100!=0&&y%4==0)){
				if(d<=60){
					System.out.print("2"+"\n"+(d-31)+"\n");
				}else if(d<=91){
					System.out.print("3"+"\n"+(d-60)+"\n");
				}else if(d<=121){
					System.out.print("4"+"\n"+(d-91)+"\n");
				}else if(d<=152){
					System.out.print("5"+"\n"+(d-121)+"\n");
				}else if(d<=182){
					System.out.print("6"+"\n"+(d-152)+"\n");
				}else if(d<=213){
					System.out.print("7"+"\n"+(d-182)+"\n");
				}else if(d<=244){
					System.out.print("8"+"\n"+(d-213)+"\n");
				}else if(d<=274){
					System.out.print("9"+"\n"+(d-244)+"\n");
				}else if(d<=305){
					System.out.print("10"+"\n"+(d-274)+"\n");
				}else if(d<=335){
					System.out.print("11"+"\n"+(d-305)+"\n");
				}else if(d<=366){
					System.out.print("12"+"\n"+(d-335)+"\n");
				}
			}else{
				if(d<=59){
					System.out.print("2"+"\n"+(d-31)+"\n");
				}else if(d<=90){
					System.out.print("3"+"\n"+(d-59)+"\n");
				}else if(d<=120){
					System.out.print("4"+"\n"+(d-90)+"\n");
				}else if(d<=151){
					System.out.print("5"+"\n"+(d-120)+"\n");
				}else if(d<=181){
					System.out.print("6"+"\n"+(d-151)+"\n");
				}else if(d<=212){
					System.out.print("7"+"\n"+(d-181)+"\n");
				}else if(d<=243){
					System.out.print("8"+"\n"+(d-212)+"\n");
				}else if(d<=273){
					System.out.print("9"+"\n"+(d-243)+"\n");
				}else if(d<=304){
					System.out.print("10"+"\n"+(d-273)+"\n");
				}else if(d<=334){
					System.out.print("11"+"\n"+(d-304)+"\n");
				}else if(d<=365){
					System.out.print("12"+"\n"+(d-334)+"\n");
				}
			}
		}
		

	}

}

 

おすすめ

転載: blog.csdn.net/m0_37483148/article/details/108291056