전체 글 171

정올 CODE 566 배열2 - 자가진단3

문제 100 이하의 자연수를 입력받아 첫 번째 항은 100으로 두 번째 항은 입력받은 수로 초기화하고 다음 항부터는 전전항에서 전항을 뺀 수로 채워나가는 수열을 작성하여 그 수가 음수가 나올 때까지 출력하는 프로그램을 작성하시오. 입력 예 62 출력 예 100 62 38 24 14 10 4 6 -2 CODE #include #define max 100001 int main(){ int n[max] = {100, 0, }, j; scanf("%d",&n[1]); for(int i = 1; n[i] >= 0; i++){ n[i + 1] = n[i - 1] - n[i]; j = i+1; } for(int i=0; i

정올 CODE 565 배열2 - 자가진단2

문제 100 미만의 양의 정수들이 주어진다. 입력받다가 0 이 입력되면 마지막에 입력된 0 을 제외하고 그 때까지 입력된 정수의 십의 자리 숫자가 각각 몇 개인지 작은 수부터 출력하는 프로그램을 작성하시오. (0개인 숫자는 출력하지 않는다.) 입력 예 10 55 3 63 85 61 85 0 출력 예 0 : 1 1 : 1 5 : 1 6 : 2 8 : 2 CODE #include int main(){ int i = 0, num = 0, n[10], sum[10] = {0, }; do{ scanf("%d",&num); if(num == 0) break; i = num / 10; sum[i]++; }while(1); for(i = 0; i < 10; i++){ if(sum[i] != 0) printf("%d :..

정올 CODE 119 값 알아내는 방법.

https://iwantlunch.tistory.com/239 #include #include int main(void) { int a = 0; time_t now; struct tm tt; time(&now); tt = *localtime(&now); a = tt.tm_year; a += tt.tm_mon; a += tt.tm_mday; printf("%d %d %d\n", 1, 2, 3); return 0; } 위 코드를 비주얼 스튜디오에서 입력해주고 각 코드마다 브레이크를 걸어줍니다. (왼쪽 회색영역인 빨간색 원 있는 위치에 더블클릭하면 됩니다.) 첫 번째 a에선 0이라고 뜹니다. 두 번째 a에선 122라고 뜹니다. 세 번째 a에선 162라고 뜹니다. #include int main(){ print..

백준 알고리즘 2010번 플러그

문제선영이의 집에는 콘센트를 꽂을 수 있는 플러그가 하나밖에 없다. 선영이는 많은 컴퓨터를 가지고 있는데, 컴퓨터의 전원 문제는 어떻게 해결하는 것일까?하나의 플러그가 있고, N개의 멀티탭이 있다. 각 멀티탭은 몇 개의 플러그로 이루어져 있다고 한다. 최대 몇 대의 컴퓨터를 전원에 연결할 수 있을까?입력 첫째 줄에 멀티탭의 개수 N이 주어진다. (1 ≤ N ≤ 500,000) 이어서 둘째 줄부터 N개의 줄에 걸쳐 각 멀티탭이 몇 개의 플러그를 꽂을 수 있도록 되어 있는지를 나타내는 자연수가 주어진다. 이 자연수는 1,000을 넘지 않는다.출력첫째 줄에 최대로 전원에 연결될 수 있는 컴퓨터의 수를 출력한다.예제 입력 13111 예제 출력 1 1예제 입력 2 258예제 출력 2 12   CODE#includ..

백준 알고리즘 1978번 소수 찾기

문제주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력주어진 수들 중 소수의 개수를 출력한다.예제 입력 141 3 5 7예제 출력 1 3 CODE#includeint main(){ int N, num, i, j, cnt=0; scanf("%d",&N); for(i=0; i  백준 알고리즘 1978번 소수 찾기

백준 알고리즘 4344번 평균은 넘겠지

문제대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 입력 첫째 줄에는 테스트 케이스의 개수 C가 주어진다.둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 출력각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다.예제 입력 155 50 50 70 80 1007 100 95 90 80 70 60 503 70 90 803 70 90 819 100 99 98 97 96 95 94 93 91예제 출력 1 40.000%57.143%33.333%66.667%55...

백준 알고리즘 1546번 평균

문제 세준이는 기말고사를 망쳤다. 세준이는 점수를 조작해서 집에 가져가기로 했다. 일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다. 그리고 나서 모든 점수를 점수/M*100으로 고쳤다. 예를 들어, 세준이의 최고점이 70이고, 수학점수가 50이었으면 수학점수는 50/70*100이 되어 71.43점이 된다. 세준이의 성적을 위의 방법대로 새로 계산했을 때, 새로운 평균을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보다 크다. 출력 첫째 줄에 새로운 평균을 출력한다. 실제 정답과 출력값의 절대..

백준 알고리즘 1463번 1로 만들기

문제 정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다. X가 3으로 나누어 떨어지면, 3으로 나눈다. X가 2로 나누어 떨어지면, 2로 나눈다. 1을 뺀다. 정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오. 입력 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. 출력 첫째 줄에 연산을 하는 횟수의 최솟값을 출력한다. 예제 입력 1 2 예제 출력 1 1 예제 입력 2 점수가 낮은 점수부터 높은 점수까지 순서대로 주어진다. 예제 출력 2 원래의 제약 조건 이외에 아무 제약 조건이 없다. 힌트 10의 경우에 10 -> 9 -> 3 -> 1 로 3번 만에 만들 수 있다. CODE #inclu..

백준 알고리즘 4101번 크냐?

문제 두 양의 정수가 주어졌을 때, 첫 번째 수가 두 번째 수보다 큰지 구하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 두 정수가 주어진다. 두 수는 백만보다 작거나 같은 양의 정수이다. 입력의 마지막 줄에는 0이 두 개 주어진다. 출력 각 테스트 케이스마다, 첫 번째 수가 두 번째 수보다 크면 Yes를, 아니면 No를 한 줄에 하나씩 출력한다. 예제 입력 1 19 4 4 23 14 0 0 예제 출력 No No Yes CODE #include int main(){ int a, b; do{ scanf(" %d %d",&a,&b); if(a > b) printf("Yes\n"); else if(b >= a && (a != 0..