Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

JollyJumpers/권순의: Difference between revisions

From ZeroWiki
imported>novaman
No edit summary
(Repair batch-0002 pages from live compare)
 
Line 1: Line 1:
== Status ==
== Status ==
{| class="wikitable"
{| class="wikitable" style="width:100%;"
|-
|-
| Memory
| Memory
Line 14: Line 14:
  public class JollyJumper {
  public class JollyJumper {
   
   
  public static void main(String[] args) {
  public static void main(String[] args) {
  int[] getNum = new int[3000];
  int[] getNum = new int[3000];
  Scanner sc = new Scanner(System.in);
  Scanner sc = new Scanner(System.in);
 
 
Line 22: Line 22:
 
 
  for (int i = 0; i < num; i++) {
  for (int i = 0; i < num; i++) {
  getNum[i] = sc.nextInt();
  getNum[i] = sc.nextInt();
  }
  }
 
 
Line 32: Line 32:
  }
  }
 
 
  public static boolean isJolly(int[] array, int num){
  public static boolean isJolly(int[] array, int num){
  int[] sub = new int[num - 1];
  int[] sub = new int[num - 1];
   
   
  for (int i = 0; i < num - 1; i++) {
  for (int i = 0; i < num - 1; i++) {
  if (Math.abs(array[i + 1] - array[i]) > num - 1)
  if (Math.abs(array[i + 1] - array[i]) > num - 1)
  return false;
  return false;
  else
  else
  sub[i] = Math.abs(array[i + 1] - array[i]);
  sub[i] = Math.abs(array[i + 1] - array[i]);
  }
  }
   
   
Line 47: Line 47:
  while (count < num) {
  while (count < num) {
  for (int i = 0; i < num - 2; i++) {
  for (int i = 0; i < num - 2; i++) {
  if (sub[i + 1] < sub[i]) {
  if (sub[i + 1] < sub[i]) {
  temp = sub[i];
  temp = sub[i];
  sub[i] = sub[i + 1];
  sub[i] = sub[i + 1];
  sub[i + 1] = temp;
  sub[i + 1] = temp;
  }
  }
  }
  }
Line 57: Line 57:
   
   
  for (int i = 0; i < num - 1; i++) {
  for (int i = 0; i < num - 1; i++) {
  if (sub[i] != (i + 1)) {
  if (sub[i] != (i + 1)) {
  return false;
  return false;
  }
  }
Line 65: Line 65:
  }
  }
  }
  }

Latest revision as of 00:16, 27 March 2026

Status

Memory 5272K Time 579MS

Source Code

import java.util.*;

public class JollyJumper {

	public static void main(String[] args) {
		int[] getNum = new int[3000];
		Scanner sc = new Scanner(System.in);
		
		while (sc.hasNextInt()) {			
			int num = sc.nextInt();
			
			for (int i = 0; i < num; i++) {
				getNum[i] = sc.nextInt();
			}
			
			if (isJolly(getNum, num))
				System.out.println("Jolly");
			else
				System.out.println("Not jolly");
		}
	}
	
	public static boolean isJolly(int[] array, int num){
		int[] sub = new int[num - 1];		

		for (int i = 0; i < num - 1; i++) {
			if (Math.abs(array[i + 1] - array[i]) > num - 1)
				return false;
			else
				sub[i] = Math.abs(array[i + 1] - array[i]);
		}

		int count = 0;
		int temp = 0;

		while (count < num) {
			for (int i = 0; i < num - 2; i++) {
				if (sub[i + 1] < sub[i]) {
					temp = sub[i];
					sub[i] = sub[i + 1];
					sub[i + 1] = temp;
				}
			}
			count++;
		}

		for (int i = 0; i < num - 1; i++) {
			if (sub[i] != (i + 1)) {
				return false;
			}
		}
		
		return true;
	}
}