File tree Expand file tree Collapse file tree 5 files changed +206
-0
lines changed
Expand file tree Collapse file tree 5 files changed +206
-0
lines changed Original file line number Diff line number Diff line change 1+ import java.util.Scanner;
2+
3+ public class Main {
4+
5+ public static void main(String[] args) {
6+
7+ Scanner sc = new Scanner(System.in);
8+
9+ //System.out.println("사이즈 입력: ");
10+ int size = sc.nextInt(); //size 입력받기
11+ sc.nextLine();
12+
13+ //int[] arr = new int[size]; //size 크기에 맞는 배열 생성
14+ //System.out.println("숫자 공백없이 입력");
15+ String num = sc.nextLine().trim(); //12345
16+
17+ int sum=0;
18+ for(int i=0;i<size; i++){
19+ char c = num.charAt(i);
20+ //sum += c;
21+ sum += Character.getNumericValue(c);
22+ }
23+
24+ System.out.println(sum);
25+ sc.close();
26+
27+ }
28+ }
Original file line number Diff line number Diff line change 1+ import java.util.Arrays;
2+ import java.util.Scanner;
3+
4+ public class Main {
5+ public static void main(String[] args) {
6+ Scanner sc = new Scanner(System.in);
7+
8+ // System.out.print("과목 수 입력: ");
9+ int sub = sc.nextInt(); //시험 본 과목의 개수 N
10+ int[] arr = new int[sub]; //시험 본 과목의 배열
11+ double[] arr2 = new double[sub]; //조작된 시험 배열
12+ int max = 0; //최고점
13+
14+ for(int i=0;i<sub;i++){
15+ arr[i] = sc.nextInt();
16+ //System.out.print("arr[] ");
17+ //System.out.print(arr[i]+" ");
18+ }
19+
20+ //max에 최대값 넣기
21+ for(int i=0;i<sub;i++){
22+ if(arr[i]>max){
23+ max=arr[i];
24+ }
25+ }
26+
27+ //System.out.println(max+" 이게 max입니다.");
28+
29+ for(int i=0;i<sub;i++){
30+ arr2[i] = (arr[i]/(double)max) *100;
31+ //System.out.print("arr2: "+arr2[i]+" ");
32+ }
33+
34+ double sum = Arrays.stream(arr2).sum();
35+
36+ double new_avg = sum/sub;
37+
38+ System.out.println(new_avg);
39+
40+ }
41+ }
Original file line number Diff line number Diff line change 1+ import java.io.BufferedReader;
2+ import java.io.InputStreamReader;
3+ import java.io.IOException;
4+ import java.util.StringTokenizer;
5+
6+ public class Main {
7+ public static void main(String[] args) throws IOException {
8+
9+ //입력 받기
10+ BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
11+
12+ StringTokenizer st = new StringTokenizer(br.readLine());
13+
14+ //집합 크기 n, 합 개수 m 받아오기
15+ int n = Integer.parseInt(st.nextToken());
16+ int m = Integer.parseInt(st.nextToken());
17+
18+ //그때그때 입력받으면 runtimeerror 뜸
19+ // 그래서 미리 합을 구해놓으면 편함
20+
21+ //arr은 집합 저장 배열 pre_sum은 누적합 저장 배열
22+ int[] arr = new int[n + 1];
23+ int[] pre_sum = new int[n + 1];
24+
25+ st = new StringTokenizer(br.readLine());
26+ //집합 누적합 계산
27+ for (int i = 1; i <= n; i++) {
28+ arr[i] = Integer.parseInt(st.nextToken());
29+ pre_sum[i] = pre_sum[i - 1] + arr[i];
30+ }
31+
32+ for (int i = 0; i < m; i++) {
33+ st = new StringTokenizer(br.readLine());
34+ int j = Integer.parseInt(st.nextToken());
35+ int q = Integer.parseInt(st.nextToken());
36+
37+ int sum = pre_sum[q] - pre_sum[j - 1];
38+ System.out.println(sum);
39+ }
40+ }
41+
42+ }
Original file line number Diff line number Diff line change 1+ package study;
2+ import java.util.*;
3+ import java.io.*;
4+
5+ public class BOJ_11724 {
6+ static ArrayList<Integer>[] graph;
7+ static boolean[] visited;
8+
9+ public static void main(String[] args) throws IOException {
10+ BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
11+ StringTokenizer st = new StringTokenizer(br.readLine());
12+
13+ int N = Integer.parseInt(st.nextToken()); // 정점 개수
14+ int M = Integer.parseInt(st.nextToken()); // 간선 개수
15+
16+ graph = new ArrayList[N+1];
17+ visited = new boolean[N+1];
18+
19+ for (int i = 1; i <= N; i++) {
20+ graph[i] = new ArrayList<>();
21+ }
22+
23+ for (int i = 0; i < M; i++) {
24+ st = new StringTokenizer(br.readLine());
25+ int u = Integer.parseInt(st.nextToken());
26+ int v = Integer.parseInt(st.nextToken());
27+ graph[u].add(v);
28+ graph[v].add(u);
29+ }
30+
31+ int count = 0;
32+ for (int i = 1; i <= N; i++) {
33+ if (!visited[i]) {
34+ dfs(i);
35+ count++;
36+ }
37+ }
38+
39+ System.out.println(count);
40+ }
41+
42+ public static void dfs(int node) {
43+ visited[node] = true;
44+ for (int next : graph[node]) {
45+ if (!visited[next]) {
46+ dfs(next);
47+ }
48+ }
49+ }
50+ }
Original file line number Diff line number Diff line change 1+ package study;
2+ import java.io.*;
3+
4+ public class BOJ_2023 {
5+
6+ static int N; // 자릿수
7+
8+ public static void main(String[] args) throws IOException {
9+ BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
10+ N = Integer.parseInt(br.readLine().trim());
11+
12+ // 1자리 소수에서 시작
13+ int[] PrimeStarts = {2, 3, 5, 7};
14+ for (int s : PrimeStarts) {
15+ dfs(s, 1);
16+ }
17+ }
18+
19+ // DFS
20+ static void dfs(int num, int depth) {
21+ if (depth == N) {
22+ System.out.println(num);
23+ return;
24+ }
25+
26+ // 뒷자리 후보 리스트
27+ int[] PrimeEnds = {1, 3, 7, 9};
28+ for (int d : PrimeEnds) {
29+ int next = num * 10 + d;
30+ if (isPrime(next)) {
31+ dfs(next, depth + 1);
32+ }
33+ }
34+ }
35+
36+ // 소수 판별
37+ static boolean isPrime(int n) {
38+ if (n < 2) return false;
39+ //axb=c이면 루트cx루트c니까 a 혹은 b는 루트 c보다 하나는 무조건 작고 하나는 큼
40+ for (int i = 2; i * i <= n; i++) {
41+ if (n % i == 0) return false;
42+ }
43+ return true;
44+ }
45+ }
You can’t perform that action at this time.
0 commit comments