2004년도 올림피아드 3번문제
이플
질문 제목 : 회의 준비질문 내용 :
#includestdio.h
file* fp1 = fopen(c:\\jiju\\input.txt, r);
file* fp2 = fopen(c:\\jiju\\output.txt, w);
void main()
{
int group[102][102] = {0,};
int a[101], b[101], count[101] = {0,}, t[101][101] = {0,};
int n, k, i, j, o, ch, sum = 0, rmax[101], num[101], min, max;
fscanf(fp1, %d\n%d, &n, &k);
for(i = 1; i = k; i++)
{
fscanf(fp1, %d %d, &a[i], &b[i]);
if(a[i] b[i])
{
ch = a[i]; a[i] = b[i]; b[i] = ch; // 오름차순으로 정렬
}
t[a[i]][b[i]] = 1; // 존재여부 설정
count[a[i]]++; count[b[i]]++; // 존재빈도 설정
rmax[i] = 0;
}
for(i = 1; i = n; i++)
{
count[i]++; // 존재빈도 설정
t[i][i] = 1; // 자기자신끼리는 관련 o
}
for(i = 1; i = k; i++)
{
for(j = 1; j = k; j++)
{
for(o = 1; o = k; o++)
{
if(t[i][j] && t[j][o])
t[i][o] = 1; // 존재여부를 한쪽을로 몰아 관련시킴
}
}
}
for(i = 1; i = n; i++)
{
for(j = 1; j = n; j++)
{
if(t[i][j])
{
group[i][j] = 1; // 그룹 형성
for(o = 1; o = n; o++)
{
t[i][o] = 0;
}
}
}
}
for(i = 1; i = n+1; i++)
{
min = 999; max = 0;
for(j = 1; j = n+1; j++)
{
min = (group[j][i] && min j) ? j : min;
if(group[j][i] == 0 && group[j-1][i])
{
max = j - 1;
sum++;
for(o = min; o = max; o++)
{
if(rmax[sum] count[o])
{
rmax[sum] = count[o]; // 존재 빈도중 최대를 입력
num[sum] = o; // 존재 // 존재 빈도 최대값 위치 입력
}
}
}
}
}
fprintf(fp2, %d\n, sum);
for(i = 1; i = sum; i++)
{
fprintf(fp2, %d\n, num[i]);
}
fclose(fp1);
fclose(fp2);
}소스가 이렇게 짜였는데요; 왠지 노가다로 한거같은 기분이 들어서 풀고도 기분이 영...
이걸 줄이고 싶은데.. 방법이 없는건가요?
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2693984 | 오버로딩이 무엇인가요? (2) | 헛매질 | 2025-05-07 |
2693956 | PlaySound재생이 안됩니다!(C에 음악넣기) | 지존 | 2025-05-06 |
2693928 | &와 *의 사용에 관한 명확한 이해 | 제나 | 2025-05-06 |
2693903 | 반복문 설명좀요 ㅠㅠ (2) | 란새 | 2025-05-06 |
2693869 | stdio.h 는 왜 쓰는건가요? (1) | 큰꽃들 | 2025-05-06 |
2693842 | 포인터 변수의 주소값끼리 더하는 것에 대해서 질문드립니다. (1) | 진솔 | 2025-05-05 |
2693811 | 소수 출력;;;; | 화이트캣 | 2025-05-05 |
2693788 | 이런 함수는 없나요? (3) | 앤드류 | 2025-05-05 |
2693758 | txt파일 불러와서 행렬로 저장 | 큰애 | 2025-05-05 |
2693727 | scanf 오류 문제!! (2) | 큰나래 | 2025-05-04 |
2693704 | 구조체 주소록 문제인데 도와주세요 (2) | 도1도캣 | 2025-05-04 |
2693676 | 열혈강의 c언어 질문입니다 | 하양이 | 2025-05-04 |
2693647 | 12.620000 을요 12.620 으로 어떻게 표현해요? (2) | 파도 | 2025-05-04 |
2693619 | 타이틀 코드.. | 단순드립 | 2025-05-03 |
2693591 | 컴파일 에러에서 질문드립니다 (3) | 게자리 | 2025-05-03 |
2693463 | 동적할당 이용시 fwrite사용을 어떻게 해야하나요..? (10) | 일본어못해요 | 2025-05-02 |
2693387 | 배열문제입니다 수정오류캡쳐했습니다 (6) | 연하얀 | 2025-05-01 |
2693356 | text 입출력 내림차순 질문입니다 ㅠ | 빛글 | 2025-05-01 |
2693328 | C언어를이용해서 .txt파일 외에 다른 확장자 파일 삭제가 가능한지.. (2) | 대나무 | 2025-05-01 |
2693299 | 파일입출력 바이너리파일 | 독특한 | 2025-04-30 |