Loading...

[swexpert] 2029. 몫과 나머지 출력하기 (D1 , java)

import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int t=sc.nextInt(); for (int i = 0; i < t; i++) { int a=sc.nextInt(); int b=sc.nextInt(); System.out.printf("#%d %d %d\n",i+1,a/b,a%b); } sc.close(); } }

[swexpert] 2050. 알파벳을 숫자로 (java)

풀이 자바는 문자열의 문자 접근을 charAt을 이용해서 한다. 명시적 형변환 한 다음, 64를 빼서 ('A' 는 65이다) 1부터 나오도록 구현한다 문자를 숫자로 변환하는 방법은 앞에 (int)를 붙여주고 숫자를 문자로 바꿔줄 때는 (char)을 붙여준다 ** 추가 '0' 은 48이다. 이를 간과해서 'A'+'0'는 숫자가 된다고 생각했는데 113이 되어서 당황했었다. (65+48===113이 된 것) 'A'-0 으로 해주면 그제서야 제대로 숫자로 형변환된다 즉, (int)s.charAt(i)로 해줘도 되지만 s.charAt(i)-0 이렇게 해줘도 된다. import java.util.Scanner; public class Solution { public static void main(String[] ..

[swexpert] 2369. B theater (java)

풀이. 극장에는 n줄으로 이루어져있다 l ~ r 만큼 사람들이 연속으로 앉아있다 인원수는 r-l+1이다. n줄의 인원수를 더해서 출력하면 된다. package com.ssafy.edu; import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int t=sc.nextInt(); for (int i = 0; i < t; i++) { int n=sc.nextInt(); long sum=0; for (int j = 0; j < n; j++) { int l=sc.nextInt(); int r=sc.nextInt(); sum+=r-l+1; } Sy..

[swexpert] 1859. 백만장자 프로젝트 (java)

함정: 데이터 범위 초과 푸는 방법: 뒤에서 부터 돌면서 풀기 1) 풀이 3 5 9의 경우 뒤집어서 9 5 3 으로 본다 1. max_value를 갱신해나간다 2. max_value - 현재 값을 결과값으로 더해 나간다. 뒤에서부터 도는 이유는 나중에 나오는 가장 큰 값을 찾기 위해서이다. current_value 9 5 3 max_value 9 9 9 diff=max_value-current_value 0 4 6 답은 모든 차이값 diff를 더한 값이다. 2) 함정 n은 총 1000000로 10^6이고 각 금액의 최대값은 10000이다. 즉 모든 금액이 10000이고 n=10^6이라면 모든 값을 다 더한 결과값이 최대 10^4*10^6 = 10^10 로 메모리가 초과하게 된다. (int의 크기는 최대 ..

[swexpert] 2058. 자릿수 더하기 (java, javascript)

1. 자바 풀이 문자열은 바로 int변환이 되지만 문자char는 되지 않길래 -'0'으로 변환했다 import java.util.Arrays; import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); String s=Integer.toString(n); int sum=0; for(int i=0; iacc+Number(cur),0); }

[swexpert] 2063. 중간값 찾기 (java)

배열을 입력받고 정렬 후 n/2 위치에 있는 값 출력 import java.util.Arrays; import java.util.Scanner; public class Solution { 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

[swexpert] 2068. 최대값 구하기 (java)

싸피로 전공자반 java를 공부하게 되면서 코테 언어를 java로 바꾸기로 하였다. 기초부터 다시 풀기 ㅠㅠ 화이팅.. import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int t=sc.nextInt(); for(int i=0;i

[swexpert] 1959. 두 개의 숫자열 (python)

짧은 쪽, 긴쪽 배열을 구분한 후 긴 배열에서 인덱스를 0부터 (긴배열길이-짧은 배열-1) 만큼 이동하면서 짧은 배열의 길이만큼 더해준다 합이 마이너스가 나올 수가 있어서 결과 초기값을 어떻게 줄까 고민하다가 배열에 결과 합을 다 넣고 최대값을 리턴해주는 방식으로 구현했습니다. t=int(input()) for i in range(1,t+1): print(f'#{i}',end=' ') n,m=map(int,input().split()) a=list(map(int,input().split())) b=list(map(int,input().split())) sum = [] if n>m: for j in range(0,n-m+1): temp = 0 for k in range(m): temp+=b[k]*a[j+k..

[swexpert] 1970. 쉬운 거스름돈 (python, java)

그리디 대표 알고리즘입니다 가장 큰 금액부터 나누면 잔돈 개수는 가장 적게 나옵니다 >

[swexpert] 1966. 숫자를 정렬하자 (python, java)

1. 파이썬 풀이 배열을 입력받고 정렬한 배열의 값을 *로 가져와 출력한다 t=int(input()) for i in range(1,t+1): n=int(input()) arr=list(map(int,input().split())) print(f'#{i}',end=' ') print(*sorted(arr)) 2. 자바 import java.util.Arrays; import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int t=sc.nextInt(); for (int tc = 1; tc