광규니
광규니네
광규니
전체 방문자
오늘
어제
  • 분류 전체보기 (154)
    • 알고리즘 (100)
      • 알고리즘 개념 (2)
      • 문제 풀이 (96)
    • 주절주절 (19)
      • 자격증, 활동 후기 (4)
      • 전시회 후기 (3)
      • 이모저모 (2)
      • 회고 (3)
      • 뜨럼 (7)
    • 운영체제 (9)
    • 개발 지식 (9)
      • Apple Watch (4)
      • MySQL (2)
      • Eclipse (1)
      • XCode (1)
    • 네트워크 공부 (1)
    • 데이터베이스 공부 (5)
    • Java 공부 (7)
    • TMP (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 백준
  • 오블완
  • 개념
  • 애플워치 앱
  • 합주
  • 프로그래머스
  • OS
  • 티스토리챌린지
  • 운영체제
  • 드린이
  • BOJ
  • 다이나믹 프로그래밍
  • 파이썬
  • 알고리즘
  • 구현
  • DP
  • 컴퓨터 사이언스
  • 애플워치 앱 만들기
  • 자바
  • BFS

최근 댓글

최근 글

티스토리

250x250
hELLO · Designed By 정상우.
광규니

광규니네

알고리즘/문제 풀이

[Java/자바 swea 8458] 원점으로 집합

2021. 9. 29. 14:04
반응형

풀이

1) 좌표와 원점까리 거리 중 홀수는 홀수끼리, 짝수는 짝수끼리 존재해야 같이 도달할 수 있습니다.

좌표들 중 거리가 짝수랑 홀수가 섞여 있으면 정답 x

 

2) max값이 원점에 도달하는 거리를 계산해야합니다.

max%2 == sum%2 과 sum>= max보다 크거나 같은지 

조건을 따져주면서 sum을 1,2,3,4, 씩 더해주면서 값을 구해야합니다.

 

수학문제는 어렵네요 ㅜㅜ

import java.io.*;
import java.util.*;


class Solution {
	
	public static void main(String[] args)throws Exception{
		// TODO Auto-generated method stub
		BufferedReader br= new BufferedReader(new InputStreamReader(System.in));
		int t=Integer.parseInt(br.readLine());
		StringTokenizer st;
		for(int tc=1;tc<=t;tc++) {
			
			int N=Integer.parseInt(br.readLine());
			int[] arr=new int[N];
			int max=0;
			
			for(int i=0;i<N;i++) {
				st = new StringTokenizer(br.readLine()," ");
				int x=Integer.parseInt(st.nextToken());
				int y=Integer.parseInt(st.nextToken());
				
				arr[i]=Math.abs(x)+Math.abs(y);
				max=Math.max(max, arr[i]);
				
			}
			for(int i=1;i<N; i++) {
				if((arr[0]%2) != (arr[i]%2)) { //홀수, 짝수 같이 있으면 답 x
					System.out.println("#"+tc+" -1");
					continue next;
				}
			}
			int sum=0;
			for(int i=0 ; ; i++) {
				sum+=i;
                // max 값 비교
				if(sum>=max && (sum%2)==(max%2)) { 
					System.out.println("#"+tc+" "+i);
					break;
				}
			}	
		}
		br.close();
	}

}
반응형
저작자표시

'알고리즘 > 문제 풀이' 카테고리의 다른 글

[Java/자바 swea 1868] 파핑파핑 지뢰찾기  (0) 2021.10.01
[Java/자바 swea 5643] 키 순서  (0) 2021.09.30
[Java/자바 백준 4485] 녹색 옷 입은 애가 젤다지?  (0) 2021.09.29
[JAVA/자바 정올 1681] 해밀턴 순환회로  (0) 2021.09.24
[JAVA/자바 백준 17472] 다리 만들기2  (0) 2021.09.17
    '알고리즘/문제 풀이' 카테고리의 다른 글
    • [Java/자바 swea 1868] 파핑파핑 지뢰찾기
    • [Java/자바 swea 5643] 키 순서
    • [Java/자바 백준 4485] 녹색 옷 입은 애가 젤다지?
    • [JAVA/자바 정올 1681] 해밀턴 순환회로
    광규니
    광규니
    공부 및 일상 올리기~

    티스토리툴바