변형된 요세푸스 문제인데...
타키
질문 제목 : 변형된 요세푸스 문제
질문 요약 :array로 함수를 만들어 요세푸스 문제를 품..
질문 내용 :
int fun1(void)
{
int m[41];
int cnt; // 3번째 대상자를 찾기 위한 변수
int live=41; // 생존자 숫자
int i, c = 0;
int val1, val2;
printf(n값을 입력하시오\n);
scanf(%d,&val1);
printf(k값을 입력하시오\n);
scanf(%d,&val2);
for( i = 0 ; i 41 ; i++ )
m[i] = i+1;
while( live 2 )
{
cnt = 0;
while( 1 )
{
if( m[c] != -1 ) cnt++;
if( cnt != 0 ) {
printf(Killed %d\n, c+1);
m[c] = -1;
live--;
break;
}
else if(cnt == 0 ){
return 0;
}
c = (c+1)%41;
}
}
for( i = 0 ; i 41 ; i++ )
if( m[i] != -1 )
printf(LIVE : %d\n, i+1);
}
배열로 된 함수 부분인데 n명(요세푸스 문제에서는 41명이지만) 그리고 k명 건너서(요세푸스 문제에서는 3명)하나씩 제거해 나가는코드를 짜려고 해요.
예를 들면n=4k=2일 경우3번째 사람과 2번째 사람은 죽어서 1과 4가 남는 프로그램...
따라서 n값과 k 값에 따라코드가 변할 수 있게 짜야 하는데 그걸 잘 모르겠어요..
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2691279 | float-정수변환-2진수변환 | 핫블루 | 2025-04-12 |
2691224 | 인자관련 질문입니다. (2) | 아잉형님 | 2025-04-11 |
2691196 | 원형 큐와 스택에서의 문제해결 (2) | 반혈 | 2025-04-11 |
2691169 | 동적할당 어디가 잘못된걸까요. | 츠키 | 2025-04-11 |
2691082 | puts vs printf | 리네 | 2025-04-10 |
2691058 | (C언어) 구구단을 작성해 봤는데 문제가 발생했습니다. (6) | 제나 | 2025-04-10 |
2690947 | 윈도우 메모장에서 버츄얼박스 우분투 붙여넣기 질문 (1) | 유우 | 2025-04-09 |
2690920 | 무슨 의미 인가요? | 딸기맛캔디 | 2025-04-09 |
2690891 | c++ 은행계좌 프로그램 | 알찬마루 | 2025-04-08 |
2690834 | c언어 if문에서 출력 질문합니다 ㅜㅜ (2) | 파랑새 | 2025-04-08 |
2690809 | c언어 질문좀 부탁드리겠습니다 | 개구리 | 2025-04-08 |
2690777 | 말 표현에서 궁금한점이 있습니다. 배열을 통째로 넘겨받으려면 매개변수로 배열을 선언할 수 있어야한다? (8) | 별햇님 | 2025-04-07 |
2690749 | 피라미드 질문드립니다 (for문 한개) | 도래솔 | 2025-04-07 |
2690718 | 함수 포인터반환 함수 질문 | 에드워드 | 2025-04-07 |
2690685 | 2중for문 도와주세여..;; | 흰추위 | 2025-04-07 |
2690655 | 팩토리얼 계산문제..질문~ (9) | 옆집꼬마야 | 2025-04-06 |
2690627 | c 변수 선언후 변수값 저장안하고 출력 | 방방 | 2025-04-06 |
2690600 | 릴리즈 모드로 컴파일해서 다른 컴퓨터에서도 실행파일을 실행할수 있는 방법 알려주세요 (5) | 제나 | 2025-04-06 |
2690576 | bin파일 저장 | 다올 | 2025-04-06 |
2690547 | C언어 뒷부분이라 너무 어려워서요;; 프로그래밍 하나만 부탁드립니다 (4) | 그루터기 | 2025-04-05 |