프로그래밍 58

10950번 A+B -3 with python 코드

A+B - 3 성공시간 제한메모리 제한제출정답맞은 사람정답 비율1 초256 MB128797665676260.946%문제두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.입력첫째 줄에 테스트 케이스의 개수 T가 주어진다.각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)출력각 테스트 케이스마다 A+B를 출력한다.예제 입력 1 복사5 1 1 2 3 3 4 9 8 5 2 예제 출력 1 복사2 5 7 17 7python 으로 입력을 받으려니 1 1 을 동시에 받는 방법을 모르겠어서 고민중이었는데, input().split() 을 통해 쪼개서 받을 수 있었다. split ( ) 여기서 괄호안에 들어가는것이 입력을 구분짓는 기준이다. 없..

동적으로 할당되는 배열

동적할당?C언어에서 동적할당하는 영역이 따로 있다. = Heap 영역이부분은 사용자가 할당하는 메모리영역이라서 할당과 해제를 사용자가 해줘야된다.ex) int *a = (int*)malloc(sizeof(int)*length);, 한 후에는 free(a) 를 필수로 해야된다.하지 않을 경우, 작은 프로그램의 경우는 영향이 덜하지만, 동적할당으로 힙영역에 많이 할당하게 되는 프로그램의 경우는 뒤에 가서는 메모리 할당 영역이 부족하게 되어 프로그램이 멈추는 상황이 생긴다.그 것이 아니더라도 free 하지않으면 코드를 돌리는 데 원치 않는 값이 나오는 경우도 생긴다 ( 이유는 모르겠다. 경험상..)왜?이건 그냥 경험상인데 시스템 프로그래밍 할 때 많이 쓰이게 되는 것같다. int a[1000000],b[100..

[백준][C] 1026번 보물

보물 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 2 초 128 MB 12195 6984 6034 61.184% 문제 옛날 옛적에 수학이 항상 큰 골칫거리였던 나라가 있었다. 이 나라의 국왕 김지민은 다음과 같은 문제를 내고 큰 상금을 걸었다. 길이가 N인 정수 배열 A와 B가 있다. 다음과 같이 함수 S를 정의하자. S = A[0]*B[0] + ... + A[N-1]*B[N-1] S의 값을 가장 작게 만들기 위해 A의 수를 재배열하자. 단, B에 있는 수는 재배열하면 안된다. S의 최솟값을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고..

[백준][C] 2751번 수정렬하기 2 - 병합정렬

문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절대값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 예제 입력 1 복사 5 5 4 3 2 1 예제 출력 1 복사 1 2 3 4 5 문제점 -> 버블정렬(bubble sort) 또는 선택정렬(selection sort) 같은 경우는 시간 복잡도가 O(N^2) 이기 떄문에 시간안에 불가능하다 ( 수정렬하기1 과 다른점은 주어진 시간이 다르기 때문이다) 그래서 퀵소트나 병합정렬을 이용해서 푸는..

[백준][TIP] 15552 번 빠른 출력

빠른 A+B시간 제한메모리 제한제출정답맞은 사람정답 비율1 초 (하단 참고)8 MB113855048411748.135%문제본격적으로 for문 문제를 풀기 전에 주의해야 할 점이 있다. 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다.C++을 사용하고 있고 cin/cout을 사용하고자 한다면, cin.tie(NULL)과 sync_with_stdio(false)를 둘 다 적용해 주고, endl 대신 개행문자(\n)를 쓰자. 단, 이렇게 하면 더 이상 scanf/printf/puts/getchar/putchar 등 C의 입출력 방식을 사용하면 안 된다.Java를 사용하고 있다면, Scanner와 System.out.println 대신 BufferedReader와 Buffe..

[백준][C/C++] 11720번 숫자의합 with 코드& 미해결(c++)

문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. 출력 입력으로 주어진 숫자 N개의 합을 출력한다. 예제 입력 3 복사 25 7000000000000000000000000 예제 출력 3 복사 7 c코드 (malloc함수는 #include 를 포함시켜줘야 된다!!) -> problem (c++성공못한 코드를 해결해보자)

[백준][c++] 11718번 그대로출력하기 cin.getline with 코드

문제 입력 받은 대로 출력하는 프로그램을 작성하시오. 입력 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시작하지 않고, 공백으로 끝나지 않는다. 출력 입력받은 그대로 출력한다. 예제 입력 1 복사 Hello Baekjoon Online Judge 예제 출력 1 복사 Hello Baekjoon Online Judge 소스코드 cin 으로 받을시 출력 값은 Hello cin.getline(s,SIZE,NULL); 으로 받을 시에 올바른 출력값을 가진다 -> SIZE-1 만큼 문자를 받아들이고 SIZE번째 문자는 NULL 로 바꾸기 때문에 딱맞게 크기를 지..

[백준][Python] 10871번 X보다 작은 수 - range 함수에서 변수사용, runtime 에러

X보다 작은 수 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 1 초 256 MB 28334 15982 14016 58.315% 문제 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. 출력 X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다. 예제 입력 1 복사 10 5 1 10 4 9 2 3 8 5 7 6 예제 출력 1 복사 1 4 2 3 백준 10871 번을 pyth..

반응형