본문 바로가기

알고파

[알고스팟/ALGOSPOT] 23. MEETING 안녕하세요. 알고라파덕입니다. 23번 문제 MEETING 이 MEETING라는 문제는 그리디 문제입니다. 문제의 목적은 남녀 회원 수와 남녀 수치가 주어졌을 때남자 수치와 여자 수치의 차이의 합의 최소값을 구하는 것입니다.ex)1 2 3 4 8 6 7 5이렇게 남자 수치와 여자 수치가 주어졌다면1, 5 / 2, 6 / 3, 7 / 4, 8이렇게 짝을 지어 차이가 4씩 나게 한다면가장 차이를 작게 할 수 있습니다. MEETING출처 : https://algospot.com/judge/problem/read/MEETING 문제 정보문제 ID시간 제한메모리 제한제출 횟수정답 횟수 (비율)MEETING1000ms65536kb3276903 (27%)출제자출처분류LIBeAlgospot 1주년 모의고사보기문제 유명 .. 더보기
[알고스팟/ALGOSPOT] 22. YULO 안녕하세요. 알고라파덕입니다. 22번 문제 YULO 이 YULO라는 문제는 그리디 문제입니다. 문제의 목적은 학생들의 점수가 주어지면, 이 학생들의 점수를 두 명씩 짝을 지어 평균값을 냅니다. 그리고 여기서 가장 큰 평균값을 가장 작게 만들었을 때 그 점수가 몇 점이 될지를 물어보는 문제입니다. 학생 수가 홀수이면 짝을 못 지은 한명은 그대로 점수가 됩니다. ex) 35 85 94 76 40 점수가 이렇게 주어진다면 (35, 94) / (40, 85) / 76 이렇게 학생들을 묶어주고 기대값을 구합니다. 64.5 / 62.5 / 76이 되어 가장 큰 값이 76이 되는데 다른 방식으로 짝을 지어도 이 76보다 작은 기대값은 존재하지 않습니다. 따라서 답은 이 76이 됩니다. YULO 출처 : https:/.. 더보기
한동아 포스팅을 못한 후 현재 상태..!! 안녕하세요~ 알고라파덕이에요!! 요즘에 세미나를 진행하랴.. 교육봉사를 다녀오냐.. 포스팅을 하지 못했습니다!! (ㅎㅎ..핑계구... 귀찮니즘이...하하) 일주일간 많은 변화가 있었어요!! 함께 보시죠~ 먼저 제가 주력으로 육성하고 있는!! 태을선인!! 마공 퇴마사!! 만렙 헬에서 득템했던 폐왕의 눈물!! 하나믿고 대지의 제압자 9셋을 향하여 달려가고 있습니다. 현재 아무런 장템도 얻지 못하여 퀘스트로 얻은 2개의 셋트만 보유중입니다!! 그리고 돈 번돈으로 얻게 된 이번 해변 패키지의 칭호!! 해변의 화끈한 그녀 플래티넘(명속 강화+6!)을 1100에 사게 되었습니다~! (짝짝짝~~) 지금 주력으로 육성하고 있는 중이구요!! 얼른 대지의제압자 9셋을 맞추고 슈퍼노바 로저리나, 에픽 무기를 노리고 있습니다.. 더보기
[알고스팟/ALGOSPOT] 18. ASYMTILING 이번 문제는 ASYMTILING 라는 문제입니다!! 이 문제는 전의 TILING2의 문제와 굉장히 유사합니다. ASYMTILING(출처 : https://algospot.com/judge/problem/read/ASYMTILING) 문제 ID시간 제한메모리 제한제출 횟수정답 횟수 (비율)ASYMTILING1000ms65536kb1099570 (51%)출제자출처분류JongMan알고리즘 문제 해결 전략보기문제 그림과 같이 2 * n 크기의 직사각형을 2 * 1 크기의 타일로 채우려고 합니다. 타일들은 서로 겹쳐서는 안 되고, 90도로 회전해서 쓸 수 있습니다. 단 이 타일링 방법은 좌우 대칭이어서는 안 됩니다. 위 그림은 2 * 5 크기의 직사각형을 채우는 비대칭 타일링 방법 6가지를 보여줍니다. 다음의 2.. 더보기
[알고스팟/ALGOSPOT] 17. TILING2 고라파덕! 이번 문제는 TILING2라는 문제입니다. 이 문제는 동적계획법을 알아가는 문제 중 한 문제라 생각합니다. 마치 계단오르기 같이 점화식을 유추하기 쉬운 문제입니다. TILING2 문제 (출처 : https://algospot.com/judge/problem/read/TILING2) 문제 2xn 크기의 사각형을 2x1 크기의 사각형으로 빈틈없이 채우는 경우의 수를 구하는 프로그램을 작성하세요. 예를 들어 n=5라고 하면 다음 그림과 같이 여덟 가지의 방법이 있습니다. 경우의 수는 n이 커지면 아주 커질 수 있으므로, 1000000007으로 나눈 값을 대신 출력하세요. 입력 입력의 첫 줄에는 테스트 케이스의 수(C 더보기
[알고스팟/ALGOSPOT] 16. JLIS 알고라파덕~ 이번 문제는 LIS를 2개를 이용하여 푸는 JLIS라는 문제입니다! 이 문제 또한 동적계획법을 이용하여 해결을 하는데요~ 동적 계획법이란 처음 주어진 문제를 더 작은 문제들로 나눈 뒤 각 조각의 답을 계산하고, 이 답들로부터 원래 문제에 대한 답을 계산해 내는 방법입니다. 어떤 수열에서 0개 이상의 숫자를 지운 결과를 원 수열의 부분 수열이라고 부릅니다. 예를 들어 '4 7 6'은 '4 3 7 6 9'의 부분 수열입니다. 중복된 숫자가 없고 오름 차순으로 정렬되어 있는 부분 수열들을 가리켜 증가 부분 수열이라고 부르지요. 예를 들어 '3 6 9'는 앞의 수열의 증가 부분 수열입니다. 두 개의 정수 수열 A 와 B 에서 각각 증가 부분 수열을 얻은 뒤 이들을 크기 순서대로 합친 것을 합친 증가.. 더보기
11. ORIVIRUS 11. ORIVIRUS 소스 코드.#include int a[110][110], data[110], chk[110], chk2[110]; int n; int main() { int testcase, x, y, edge; int i, j, k, cnt; scanf("%d", &testcase); while(testcase >= 1) { --testcase; scanf("%d", &n); for(i=1; i 더보기
12. STARCRAFT #include #include using namespace std; double ave, winper, loseper; double n, m; int main() { long int q; int testcase, i, j, k; double testave; cin >> testcase; while(testcase >= 1) { --testcase; cin >> n >> m; if(m==1) { printf("%d\n", int(n)); continue; } winper = n/100; loseper = 1-winper; ave = 1 + loseper * m; for(i=2; i 더보기
13. FESTIVAL 알고라파덕13. FESTIVAL 소스.#include int a[1010]; int main() { int testcase, n, m; int i, j; double sum, ave, min; scanf("%d", &testcase); while(testcase >= 1) { --testcase; scanf("%d %d", &n, &m); for(i=1; i 더보기
14. TRIANGLEPATH 알고라파덕.14. TRIANGLEPATH 소스.#include void TRIANGLEPATH(); int main() { int testcase; scanf("%d", &testcase); while(testcase >= 1) { --testcase; TRIANGLEPATH(); } return 0; } void TRIANGLEPATH() { int data[105][105] = { 0}; int sum[105][105] = { 0 }; int N, i, j, max = 0; scanf("%d", &N); for(i=1; i 더보기