La 와 LB 는 상호 보완 각 이 며, LB 의 절반 은 La 보다 30 도 작 으 며, La 와 LB 는 각각 몇 도 입 니까?

La 와 LB 는 상호 보완 각 이 며, LB 의 절반 은 La 보다 30 도 작 으 며, La 와 LB 는 각각 몇 도 입 니까?


LB 를 X 도로 설정 하 다.
X + (X / 2 + 30) = 180
3X / 2 = 150
X = 100
그래서 LB 는 100 도, La 는 80 도.



데이터 구조 알고리즘 구현: 두 개의 선형 표 LA 와 LB 를 이용 하여 각각 두 개의 집합 A 와 B 를 표시 하고 새로운 집합 A = A 와 B 를 요구 합 니 다.
두 개의 선형 표 LA 와 LB 를 이용 하여 각각 두 개의 집합 A 와 B 를 표시 하고 새로운 집합 A = A 와 B 를 요구한다.
계산법 은
void union (List & La, List Lb) {
Lalen = ListLength (La);
Lblen = ListLength (Lb);
for (i = 1; i


내 가 쓴 것 을 네가 번역 하고 고치 면 된다.
void Union (Likst * L1, Likst * L2, Likst * & L3) / 교 집합
{.
링크 리스트 * p = L1 - > next, * q = L2 - > next, * s, * c;
L3 = (Linkist *) malloc (sizeof (Likst);
L3 - > next = NULL;
c = L3;
while (p! = NULL & q! = NULL)
{if (p - > data)
{s = (Linkist *) malloc (sizeof (Likst); / 복사 지점
s - > data = p - > data;
c - > next = s; c = s;
p = p - > next;
}.
else if (p - > data > q - > data)
{s = (Linkist *) malloc (sizeof (Likst);
s - > data = q - > data;
c - > next = s; c = s;
q = q - > next;
}.
else.
{.
s = (Linkist *) malloc (sizeof (Likst);
s - > data = p - > data;
c - > next = s; c = s;
p = p - > next;
q = q - > next;
}.
}.
while (q! = NULL)
{.
s = (Linkist *) malloc (sizeof (Likst);
s - > data = q - > data;
c - > next = s; c = s;
q = q - > next;
}.
c - > next = NULL;
while (p! = NULL)
{.
s = (Linkist *) malloc (sizeof (Likst);
s - > data = p - > data;
c - > next = s; c = s;
p = p - > next;
}.
c - > next = NULL;
}.



데이터 구조 (C 언어 판) 에 선형 표 LA (3, 5, 8110) 와 LB (2, 6, 8, 9, 11, 15, 20) 가 설치 되 어 있 습 니 다.
1: LA 와 LB 가 각각 두 개의 집합 A 와 B 를 표시 하면 새로운 집합 A = A 차 가운 B (같은 원소 보류 하지 않 음) 의 예측 수출 LA = (3, 5, 8, 11, 2, 6, 9, 15, 20)
2: LA 와 LB 가 각각 두 개의 집합 A 와 B 를 표시 하면 새로운 집합 A = A 차 가운 B (같은 원소 보존) 의 예측 수출 LA = (2, 3, 5, 6, 8, 9, 11, 15, 20)
데이터 구조 (C 언어 판) 에 선형 표 LA (3, 5, 8, 11) 와 LB (2, 6, 8, 9, 11, 15, 20) 가 설치 되 어 새로운 집합 을 추구한다.


# include
# include
# define listinit사이즈 100.
# define listincrement 10
typedef struct
{int * elem;
int length;
int listsize;
} sqlist;
int initsqlist (sqlist * l) / 초기 화
{.
l - > elem = (int *) malloc (listinitsize * sizeof (int);
\ x09if (! l - > elem)
\ x09 \ x09exit (0);
\ x09l - > length = 0;
\ x09l - > listsize = listinit사이즈
\ x09 return 0;
}.
int listinsertsq (sqlist * l, int i, int) / 원 소 를 삽입 합 니 다.
{.
\ x09int * p, * q;
\ x09if (il - > length + 1)
\ x09 \ x09exit (0);
\ x09q = & (l - > elem [i - 1];
\ x09for (p = & (l - > elem [l - > length - 1]); p > = q; p)
\ x09 \ x09 * (p + 1) = * p;
\ x09 * q = e;
\ x09 + l - > length;
\ x09 return 0;
}.
void add (sqlist * l, int) / 마지막 에 추가
{.
listinsertsq (l, l - > length + 1, e);
}.
void disp (sqlist * l)
{.
int i;
for (i = 0; ilength; i +)
\ x09 printf ("% d", l - > elem [i]);
printf ("n");
}.
int find (sqlist * l, int) / 요소 가 존재 하 는 지 찾기
{.
int i, t = - 1;
for (i = 0; ilength; i +)
\ x09if (l - > elem [i] = e)
\ x09 {t = i; break;}
return t;
}.
void opt1 (sqlist * la, sqlist * lb) / (같은 요소 보류 하지 않 음)
{.
int i, j;
for (i = 0; ilength; i +)
{.
\ x09j = find (la, lb - > elem [i];
if (j = - 1)
\ x09 \ x09 listinsertsq (la, la - > length + 1, lb - > elem [i];
}.
}.
void sort (sqlist * la) / 정렬
{.
\ x09int i, j, k;
\ x09for (i = 0; ilength; i +)
\ x09 \ x09for (j = i + 1; jlength; j +)
\ x09 \ x09 {
\ x09 \ x09 if (la - > elem [i] > la - > elem [j])
\ x09 \ x09 {
\ x09 \ x09 \ x09 k = la - > elem [i];
\ x09 \ x09 la - > elem [i] = la - > elem [j];
\ x09 \ x09 la - > elem [j] = k;
\ x09 \ x09}
\ x09 \ x09}
}.
void opt2 (sqlist * la, sqlist * lb) / (같은 요소 유지)
{.
int i, j;
for (i = 0; ilength; i +)
{.
\ x09j = find (la, lb - > elem [i];
if (j! = - 1)
\ x09 \ x09 listinsertsq (la, j + 1, lb - > elem [i];
\ x09else
\ x09 \ x09 listinsertsq (la, la - > length + 1, lb - > elem [i];
}.
sort (la);
}.
int main ()
{.
\ x09sqlist La, Lb;
\ x09 initsqlist (& La);
add (& La, 3);
add (& La, 5);
add (& La, 8);
add (& La, 11);
\ x09 initsqlist (& Lb);
add (& Lb, 2);
add (& Lb, 6);
add (& Lb, 8);
add (& Lb, 9);
add (& Lb, 11);
add (& Lb, 15);
add (& Lb, 20);
\ x09disp (& La);
\ x09disp (& Lb);
\ x09opt1 (& La, & Lb); / 작업 (같은 요소 가 보류 되 지 않 음)
\ x09disp (& La);
\ x09La length= 0; / 다시 La 초기 화
add (& La, 3);
add (& La, 5);
add (& La, 8);
add (& La, 11);
\ x09opt2 (& La, & Lb); / 작업 (같은 요소 유지)
\ x09disp (& La);
\ x09
\ x09 return 0;
}.
출력:
3, 5, 8, 11.
2, 6, 8, 9, 11, 15, 20.
3, 5, 8, 11, 2, 6, 9, 15, 20.
2, 3, 5, 6, 8, 9, 11, 15, 20.