반응형

 

안녕하세요 Jin's 입니다.

 

백준 알고리즘의 문자열 중 문자열 반복 ( 문제 번호 : 2675 )의 소스입니다.

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args){
		Scanner scan = new Scanner(System.in);
		int t = Integer.parseInt(scan.nextLine());
		for(int i=0; i<t; i++){
			int cnt = scan.nextInt();
			String r = scan.next();
			for(int k=0; k<r.length(); k++){
				for(int j=0; j<cnt; j++){
					System.out.print(r.charAt(k));
				}
			}
			System.out.println();
		}
		scan.close();
	}
}

 

2) PYTHON

t = int(input())
for i in range(t):
    cnt, r = input().split()
    for j in r:
        print(j*int(cnt), end='')
    print()

 

여러분도 한번 풀어보세요!

 

반응형
반응형

 

안녕하세요 Jin's 입니다.

 

백준 알고리즘의 문자열 중 알파벳 찾기 ( 문제 번호 : 10809 )의 소스입니다.

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

    * indexOf 함수는 입력받은 s의 값 중 a~z의 문자의 위치를 반환해주고, 없으면 -1을 반환 해준다.

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		String s = scan.nextLine();
		scan.close();
		
		for(char i='a'; i<='z'; i++){
			System.out.print(s.indexOf(i)+" ");
		}
	}

}

 

2) PYTHON

import string
s = input()
for i in list(string.ascii_lowercase):
    print(s.find(i), end=' ')

 

여러분도 한번 풀어보세요!

 

반응형
반응형

 

안녕하세요 Jin's 입니다.

 

백준 알고리즘의 문자열 중 숫자의 합 ( 문제 번호 : 11720 )의 소스입니다.

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

import java.util.Scanner;

public class Main {
	
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		String num = scan.next();
		int result = 0;
		
		for(int i=0; i<n; i++){
			result += Integer.parseInt(String.valueOf(num.charAt(i)));
		}
		
		System.out.println(result);
		scan.close();
	}

}

 

2) PYTHON

n = int(input())
num = input()
result = 0
for i in range(n):
    result += int(num[i])
print(result)

 

여러분도 한번 풀어보세요!

 

반응형
반응형

 

안녕하세요 Jin's 입니다.

 

백준 알고리즘의 문자열 중 아스키 코드 ( 문제 번호 : 11654 )의 소스입니다.

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader read = new BufferedReader(new InputStreamReader(System.in));
		byte[] result = read.readLine().getBytes();
		read.close();
		for(byte r : result){
			System.out.println(r);
		}
	}
}

 

2) PYTHON

    * ord => 문자를 아스키 코드로 변환

print(ord(input()))

 

여러분도 한번 풀어보세요!

 

 

반응형
반응형

 

안녕하세요 Jin's 입니다.

 

백준 알고리즘의 함수 중 한수 ( 문제 번호 : 1065 )의 소스입니다.

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		scan.close();
		int result = 0;
		
		if(n<100){
			result=n;
		}else{
			result = 99;
			
			for(int i=100; i<=n;i++){
				int a = i/100;
				int b = i/10%10;
				int c = i%10;
				if(b*2 == a+c){
					result++;
				}
			}
		}
		System.out.println(result);
	}
}

 

2) PYTHON

n = int(input())
result = 0
if n < 100:
    result = n
else :
    result = 99
    for i in range(100, n+1):
        if 2*(i // 10 % 10) == i // 100 + i % 10:
            result += 1
print(result)

 

여러분도 한번 풀어보세요!

 

 

반응형
반응형

 

안녕하세요 Jin's 입니다.

 

최근에 리눅스 마스터 2급 준비한다고, 시험 끝났다는 마음에 또 한참을 놀다가 돌아왔습니다!

 

백준 알고리즘의 함수 중 셀프 넘버 ( 문제 번호 : 4673)의 소스입니다.

 

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

   * all_set의 숫자 정의도 for문에서 동시에 진행

import java.util.HashSet;
import java.util.Iterator;

public class Main {

	public static void main(String[] args) {
		HashSet<Integer> all_set = new HashSet<Integer>();
		HashSet<Integer> generate_set = new HashSet<Integer>();
		for(int i=1; i<10001; i++){
			int sum = i;
			all_set.add(i);
			String num = String.valueOf(i);
			for(int j=0; j<num.length(); j++){
				sum += Integer.parseInt(String.valueOf(num.charAt(j)));
			}
			generate_set.add(sum);	
		}
		all_set.removeAll(generate_set);
		
		Iterator result = all_set.iterator();
		while(result.hasNext()){
			System.out.println(result.next());
		}
	}
}

 

2) PYTHON

   * 모든 숫자를 set으로 넣어둔 뒤 생성자들을 찾은 뒤 빼주면 셀프 넘버!

all_set = set(range(1, 10001))
generate_set = set()

for i in range(1, 10001):
    for j in str(i):
        i += int(j)
    generate_set.add(i)

self_num = all_set - generate_set
for k in sorted(self_num):
    print(k)

 

여러분도 한번 풀어보세요!

 

반응형
반응형

안녕하세요 Jin's 입니다.

 

백준 알고리즘의 함수 중 정수 N개의 합 ( 문제 번호 : 15596 )의 소스입니다.

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

public class Test {
    long sum(int[] a) {
        long ans = 0;
        for(int i : a){
			ans +=i;
		}
        return ans;
    }
}

 

2) PYTHON

def solve(a):
    return sum(a)

 

여러분도 한번 풀어보세요!

반응형
반응형

 

안녕하세요 Jin's 입니다.

 

백준 알고리즘의 1차원 배열 마지막 문제인 평균은 넘겠지 ( 문제 번호 : 4344 )의 소스입니다.

 

 

Java와 Python 두가지 버전 소스입니다.

 

1) JAVA

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		int testCase = Integer.parseInt(scan.nextLine());
		
		for(int i=0; i<testCase; i++){
			int student = scan.nextInt();
			int[] score = new int[student];
			int ave = 0;
			int cnt = 0;
			
			for(int j=0; j<student; j++){
				score[j] = scan.nextInt();
				ave += score[j];
			}
			ave = ave/student;
			
			for(int j=0; j<student; j++){
				if(score[j] > ave){
					cnt ++;
				}
			}
			System.out.printf("%.3f",(double)cnt/student*100);
			System.out.println("%");
		}
		scan.close();
	}
}

 

2) PYTHON

    * 리스트 자체로 for문을 돌려 for문의 j 값이 리스트안의 값이 바로 나올수 있도록 설정

      (이때 첫번째 학생수 제외하고 나오도록 [1:] 설정)

    * 소수점 이하 3자리 나오도록 %.3f 설정

    * 소수점 이하 3자리 반올림 round 지정

for i in range(int(input())):
    total = list(map(int, input().split()))
    ave = (sum(total)-total[0]) / total[0]
    cnt = 0
    for j in total[1:]:
        if j > ave:
            cnt += 1
    print(str('%.3f' % round(cnt / total[0] * 100, 3))+'%')

 

여러분도 한번 풀어보세요!

 

반응형

+ Recent posts