컴공댕이 공부일지

220801 Ec.crew 본문

기록/EC.crew 정기 모임 정리

220801 Ec.crew

은솜솜솜 2022. 8. 1. 17:54
728x90

[ 2022년 8월 1일 정모 문제 풀이 모음 ]

 

 

#1.

해결

단어 입력을 받고 회문인지 아닌지 판별하는 프로그램 

(단어는 100자 이내)

#include <stdio.h>

int main() {

int n=0;
int ans=0;
char word[101];
char bword[101];

printf("단어를 입력하세요. \n");
scanf("%s", word);

printf("입력된 단어는 : %s \n", word);

for(int i=0; i<101; i++) {
if(word[i]!=0){
n++;
} 
else{
break;
}
} 

printf("입력된 단어는 %d 글자 입니다. \n",n);

for(int i=0; i<n; i++) {
bword[i]=word[n-1-i];
}

printf("입력된 단어를 거꾸로 하면 : %s \n", bword);

for(int k=0; k<n; k++) {
if(bword[k]==word[k]){
ans++;
}
}

if(n==ans){
printf("입력된 단어는 회문입니다. \n");
}
else{
printf("입력된 단어는 회문이 아닙니다. \n");
}

return 0;
}

 

 

 

 

 

 

 

#2.

거의 해결

오름 등반 동호회 회원인 동백, 철쭉, 유채는 주기적으로 한라산을 등반한다 
2022년 1월 1일 토요일에 처음으로 셋이 함께 한라산을 등반한 후 각자의 등반 주기에 맞춰 등반한다.
동백, 철쭉, 유채의 등반 주기를 입력했을 때 셋이 함께 한라산을 오르는 다음 등반 날짜와 요일을 출력하는 프로그램을 작성하세요.

출력 예시)
YYYY-MM-DD
MON TUE WED THU FRI SAT SUN

 

 

최소공배수 활용해서 며칠후인지는 산출했지만 그걸 날짜로 환산은 못함..

#include <stdio.h>

int main() {
	
	int a,b,c,min,max,y,m,d=0;
	
	printf("셋의 주기를 차례로 입력하세요.");
	scanf("%d %d %d",&a, &b, &c);
	int months[] = {31,28,31,30,31,30,31,31,30,31,30,31};
	
	//1월 1일을 1로 보쟈. 최소공배수 찾는거자낭.
	
	for(int i=a*b*c; i>0; i--) {
		if(a%i==0 && b%i==0 && c%i==0) {
			max=i; //최대공약수.
			break;
		}
	}
	
	min=max*(a/max)*(b/max)*(c/max); //최소공배수. 
	
	//최소공배수만큼 지나면 셋의 등산 주기가 겹침.
	
	printf("셋은 %d일 후에 같이 등산을 하게 된다. \n",min);
	
	if (min<31) {
		d=min;
	}
	else{
		while(d>=0) {
		for(int k=11; k>=0; k--){
			d=min-months[k];
		}
	}
		
	}
	
	
	printf("%d",d);
	
	return 0;
}

 

 

 

 

 

 

 

 

 

#3.

넘어감

xxxx년 x월 x일의 요일을 맞추기

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#4.

미해결

이진탐색 활용하기 (백준10815)

728x90

'기록 > EC.crew 정기 모임 정리' 카테고리의 다른 글

221103 EC.crew : 구간 합 부분 합  (0) 2022.11.05
220929 EC.crew  (0) 2022.09.29
220829 EC.crew  (0) 2022.08.31
220822 EC.crew  (0) 2022.08.27
220808 Ec.crew  (0) 2022.08.08
Comments