SlideShare a Scribd company logo
1 of 15
Download to read offline
Project #2
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ




        ์ด์‚ฐ์น˜ ์ˆ˜ํ•™ B1
                                  ์กฐ์žฅ: 09 ๋ฐฑ์ข…๊ทผ
         ์กฐ์›: 08 ๊น€๋ฌด๊ฒฝ, 11 ์žฅ๋™๊ทœ , 11 ๋ฐ•์ •ํ˜„ , 11 ์ •์˜ˆ๋ฆฐ
๊ด€๊ณ„์ฐพ๊ธฐ

โ€ขํ–‰๋ ฌ ํ‘œํ˜„ ์ž…๋ ฅ์„ ์ž…๋ ฅ๋ฐ›์•„์„œ reflexive,
symmetric, irreflexive ๊ฒฝ์šฐ์— yes/no์ธ์ง€
์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ ์ž‘์„ฑํ•˜๊ธฐ


โ€ข์ž…๋ ฅ:
3x3 ํ–‰๋ ฌ์ผ ๊ฒฝ์šฐ: [[1,0,0][1,1,0][0,1,0]]
โ€ข2x2, 2x3 ~ 4x5, 5x4, 5x5 ๊นŒ์ง€ ๊ฐ€๋Šฅ


โ€ข์ถœ๋ ฅ
yes/no
ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ๋‚ด์šฉ ๋ฐ ํ•จ์ˆ˜
1. binary relation
โ‘ ๋‘ ์ง‘ํ•ฉ A, B์— ๋Œ€ํ•œ 2ํ•ญ ๊ด€๊ณ„ R๋Š” ๋‘ ์ง‘ํ•ฉ์˜ ๋ฐ์นด๋ฅดํŠธ ๊ณฑ Aร—B์˜ ๋ถ€๋ถ„ ์ง‘ํ•ฉ์ด๋‹ค. ์ฆ‰, R
โŠ†Aร—B, (a, b)โˆˆR์ผ ๋•Œ aRc๋กœ ํ‘œ์‹œํ•œ๋‹ค.
โ‘ก์ฐจ์ˆ˜๊ฐ€ 2์ธ ๊ด€๊ณ„. ์—ฌ๊ธฐ์„œ ์ฐจ์ˆ˜๋Š” ๊ด€๊ณ„ ๋‚ด์˜ ์†์„ฑ ์ˆ˜๋ฅผ ๋งํ•œ๋‹ค.




2. reflexive
๊ด€๊ณ„ R์ด ์ •์˜๋œ ์ง‘ํ•ฉ์˜ ๋ชจ๋“  ์›์†Œ a์— ๋Œ€ํ•ด์„œ aRa๊ฐ€ ์„ฑ๋ฆฝํ•˜๋Š” ๊ฒฝ์šฐ์— ๋Œ€ํ•ด R์„ ๋ฐ˜์‚ฌ์ 
๊ด€๊ณ„๋ผ๊ณ  ํ•œ๋‹ค.


3. symmetric
์ง‘ํ•ฉ์˜ ๋‘ ์›์†Œ a, b์— ๋Œ€ํ•ด์„œ a R b ๊ด€๊ณ„๊ฐ€ ์„ฑ๋ฆฝํ•  ๋•Œ b R a์˜ ๊ด€๊ณ„๋„ ์„ฑ๋ฆฝํ•˜๋ฉด R์„ ๋Œ€
์นญ์„ฑ ๊ด€๊ณ„๋ผ ํ•œ๋‹ค.


4. irreflexive
๊ด€๊ณ„ R์ด ์ •์˜๋œ ์ง‘ํ•ฉ A์˜ ๋ชจ๋“  ์›์†Œ a์— ๋Œ€ํ•˜์—ฌ a R a์˜ ๊ด€๊ณ„๊ฐ€ ์„ฑ๋ฆฝํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ R์„
๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„๋ผ ํ•œ๋‹ค.




๋ฐ˜์‚ฌ,๋น„๋ฐ˜์‚ฌ,๋Œ€์นญ,๋ฐ˜๋Œ€์นญ ๊ด€๊ณ„ ๋ถ€์—ฐ ์„ค๋ช… ๋ฐ ์˜ˆ์ œ ํ’€์ด


๊ฐ ๊ด€๊ณ„์— ๊ด€ํ•ด์„œ ํ–‰๋ ฌ์„ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฌด์Šจ ๊ด€๊ณ„์ธ์ง€ ํŒŒ์•…!!

ย ์˜ˆ์ œ

1) R1= {(1, 1), (1, 2), (1, 3), (3, 3)}
=> (2,2)๊ฐ€ ์ถ”๊ฐ€๋˜์•ผ ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„ {(1,1),(1,2),(1,3),(3,3),(2,2)}

2) R2 = {(1,2),(2,1),(1,3),(2,3),(3,1),(3,2)}
=> ๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์— ์žˆ๋‹ค (1,1), (2,2), (3,3) ์ด ์—†์Œ (์•„๋ž˜ ๋ถ€๊ฐ€ ์„ค๋ช… ์ฐธ์กฐ)

=> R2๋Š” ๋Œ€์นญ์  ๊ด€๊ณ„์— ์žˆ๋‹ค                 (์•„๋ž˜ ๋ถ€๊ฐ€ ์„ค๋ช… ์ฐธ์กฐ)



a.{(a,b),(a,c),(a,d),(a,e)}

b.{(a,b),(b,a),(b,d),(d,b),(a,e),(e,a)}
c.{(a,a),(b,b),(c,c),(d,d)}

a.{(a,b),(a,c),(a,d),(a,e)}



a. {(a,b),(a,c),(a,d),(a,e)}

 reflexive๊ฐ€ ์•„๋‹Œ ๊ฒƒ์€ ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค( a๊ฐ€ ์“ฐ์˜€๋Š”๋ฐ (a, a)๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค ).

(a,b)๊ฐ€ ์žˆ๋Š”๋ฐ (b,a)๊ฐ€ ์—†์œผ๋ฏ€๋กœ symmetric์ด ์•„๋‹™๋‹ˆ๋‹ค.
x R y ์ด๊ณ  y R z ์ด๋ฉด x R z ๋ฅผ ํ•ญ์ƒ ๋งŒ์กฑํ•˜๋ฉด transitive ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ x R y ์ด๊ณ  y R z ์ธ ๊ฒฝ์šฐ๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์œ„์˜ ๋ช…์ œ์˜ ์กฐ๊ฑด์ด ํ•ญ์ƒ F ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ
์ฐธ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ transitive ํ•ฉ๋‹ˆ๋‹ค. ( ์ด๋Ÿฐ ๊ฒƒ์„ vacuus truth ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค ).



b.{(a,b),(b,a),(b,d),(d,b),(a,e),(e,a)}

reflexive๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ( a๊ฐ€ ์“ฐ์˜€๋Š”๋ฐ (a, a) ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค ).

(a,b), (b,a) ๊ฐ€ ์žˆ๋Š”๋ฐ (a,a)๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. transitive๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

x R y => y R x ๋ฅผ ๋ชจ๋‘ ์„ฑ๋ฆฝํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ symmetric ํ•ฉ๋‹ˆ๋‹ค.




c.{(a,a),(b,b),(c,c),(d,d)}

 a, b, c, d ๋ชจ๋‘ (a, a), (b, b), (c, c), (d, d) ๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ reflexive์ž…๋‹ˆ๋‹ค.

๋ชจ๋‘ ์Œ์ด ๊ฐ™์€ ๋‘ ๊ฐœ๋กœ ๋˜์–ด์žˆ์œผ๋ฏ€๋กœ ๋ถ„๋ช…ํžˆ symmetric์ž…๋‹ˆ๋‹ค.



x R y and y R z ์ธ ๊ฒƒ์„ ๋งŒ์กฑํ•˜๋Š” ๊ฒƒ์ด ์—†์œผ๋ฏ€๋กœ ์œ„์—์„œ ์‚ดํŽด๋ณธ ๋ฐ” ๋Œ€๋กœ transitive ์ž…๋‹ˆ
๋‹ค.



(1,1) ์˜ ์˜๋ฏธ๋Š” 1ํ–‰์—์„œ 1์—ด๋กœ ๊ฐ„๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  R์˜ ๊ด€๊ณ„๊ฐ€ ์žˆ์œผ๋ฉด ํ–‰๋ ฌ์ƒ์— 1์ด๋ผ๊ณ  ์ ์œผ์‹œ๊ณ , ์—†์œผ๋ฉด 0์ด๋ผ๊ณ  ์“ฐ์„ธ์š”.

1 1 1

0 0 0
0 0 1

ย 

*๋ฐ˜์‚ฌ์  ๊ด€๊ณ„ (reflexive)

๋Œ€๊ฐ์„  ์„ฑ๋ถ„์ด ๋ชจ๋‘ 1์ด๋ฉด, ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์ด๋‹ค.

ย 
์˜ˆ์ œ

1 0 0

1 1 0

0 0 1

ย 

*๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„ (irreflexive)
๋Œ€๊ฐ์„  ์„ฑ๋ถ„์ด ๋ชจ๋‘ 0์ด๋ฉด, ๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์ด๋‹ค.

ย 

์˜ˆ์ œ

0ย 1 0

1ย 0 1

0ย 1 0

ย 

*๋Œ€์นญ์  ๊ด€๊ณ„ (symmetric)

๋Œ€๊ฐ์„  ์„ฑ๋ถ„์„ ์ค‘์‹ฌ์œผ๋กœ ๋Œ€์นญ์ ์ด์–ด์•ผ ํ•œ๋‹ค.

ย ์˜ˆ์ œย  (์ƒ‰์ด ๊ฐ™์€ ๊ฒƒ๋ผ๋ฆฌ ๋Œ€์นญ์ž„์„ ์˜๋ฏธํ•จ)

0ย 1 0

1ย 1 1
0ย 1 0

ย 

*๋ฐ˜๋Œ€์นญ์  ๊ด€๊ณ„ (Anti-symmetric)
๋Œ€๊ฐ์„  ์„ฑ๋ถ„์„ ์ค‘์‹ฌ์œผ๋กœ ์„œ๋กœ ๋ฐ˜๋Œ€์นญ์ ์ด์–ด์•ผ ํ•œ๋‹ค.

ย 

์˜ˆ์ œย  (์ƒ‰์ด ๊ฐ™์€ ๊ฒƒ๋ผ๋ฆฌ ๋ฐ˜๋Œ€์นญ์ž„์„ ์˜๋ฏธํ•จ)

0ย 1 0

0ย 1 0

1ย 1 0

ย 
๋ถ€์—ฐ์„ค๋ช…ย 

์˜ˆ์ œ1) R= {(1, 1), (1, 2), (1, 3), (3, 3)}์—์„œ ...(1,1) ์˜ ์˜๋ฏธ๋Š” 1ํ–‰์—์„œ 1์—ด๋กœ ๊ฐ„๋‹ค๋Š” ๊ฒƒ
์ด๋ž๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  R์˜ ๊ด€๊ณ„๊ฐ€ ์žˆ์œผ๋ฉด ํ–‰๋ ฌ์ƒ์— 1์ด๋ผ๊ณ  ์ ์œผ์‹œ๊ณ , ์—†์œผ๋ฉด 0์ด๋ผ๊ณ  ์“ฐ์„ธ์š”.

์ฐธ๊ณ  ๊ทธ๋ฆผ




๋Œ€๊ฐ์„  ์„ฑ๋ถ„์€ โ†˜ ๋ฐฉํ–ฅ๋งŒ ๋ฉ๋‹ˆ๋‹ค.

1 0 0
1 1 0

0 0 1

ย ์ถ”์ด์  ๊ด€๊ณ„




์ถœ์ฒ˜ : http://kin.naver.com/
ํ•„์š”ํ•œ ํ•จ์ˆ˜
getchar
์›ํ˜• : int getchar(void)
ํ—ค๋”ํŒŒ์ผ : stdio.h
๊ธฐ๋Šฅ
ํ‚ค๋ณด๋“œ์—์„œ ๋ฌธ์ž ํ•˜๋‚˜๋ฅผ ์ฝ์–ด์˜จ๋‹ค.
๊ธฐ์ • ์ŠคํŠธ๋ฆผ์ธ ํ‘œ์ค€ ์ž…๋ ฅ ์ŠคํŠธ๋ฆผ์œผ๋กœ๋ถ€ํ„ฐ ํ•œ ๋ฌธ์ž๋ฅผ ์ฝ์–ด์˜ค๋Š” ํ•จ์ˆ˜์ž„์„ ์•Œ ์ˆ˜ ์žˆ
๋‹ค. stdin์€ ๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— getchar๋„ ๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
ํŠน์ง•
๋ฒ„ํผ์— ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ๊บผ๋‚ด ๋ฆฌํ„ดํ•˜๊ณ  ๊บผ๋‚ธ ๋ฌธ์ž๋ฅผ ๋ฒ„ํผ์—์„œ ์ง€์šด๋‹ค.
๋ฒ„ํผ๊ฐ€ ๋น„์–ด ์žˆ์œผ๋ฉด ์ž…๋ ฅ์„ ๋ฐ›๋˜ Enterํ‚ค๊ฐ€ ๋“ค์–ด์˜ฌ ๋•Œ๊นŒ์ง€ ์ž…๋ ฅ์„ ๋ฐ›๋Š”๋‹ค.


์ถœ์ฒ˜: www.winapi.co.kr




๋ฌธ์ œํ•ด๊ฒฐ์ฑ…
์•Œ๊ณ ๋ฆฌ์ฆ˜
โ‘ ๋ฌธ์ž์—ด์„ ๋ฐ›์•„ ์ด์ฐจ์›๋ฐฐ์—ด์— ๋„ฃ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜.
getcharํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ๋ฌธ์ž์—ด์„ ๊ฐ ๊ธ€์ž์”ฉ ๋ฐ›์•„์„œ ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค.
๋ฐฐ์—ด์— ์ €์žฅ๋œ '['์˜ ๊ฐœ์ˆ˜์™€ โ€˜0โ€™๊ณผ โ€˜1โ€™์˜ ๊ฐœ์ˆ˜๋กœ ํ–‰๊ณผ ์—ด์„ ํฌ๊ธฐ๋ฅผ ํŒ๋‹จํ•œ๋‹ค.
์„ ์–ธ๋œ ์ด์ฐจ์› ๋ฐฐ์—ด์˜ ํ–‰๊ณผ ์—ด์„ ํƒ์ƒ‰ํ•˜๊ธฐ ์œ„ํ•ด ์ด์ค‘ํฌ๋ฌธ์„ ๋งŒ๋“ ๋‹ค.
์ด์ค‘ํฌ๋ฌธ ์•ˆ์— ์ฒ˜์Œ ๋ฌธ์ž์—ด์„ ๋ฐ›์•˜๋˜ ๋ฐฐ์—ด์„ ํƒ์ƒ‰ํ•˜์—ฌ ์ˆซ์ž๋ฅผ ๋งŒ๋‚  ๊ฒฝ์šฐ ์ด์ฐจ์› ๋ฐฐ์—ด์— ์ €
์žฅํ•˜๋„๋ก ํ•œ๋‹ค.
โ€˜[โ€™์™€ โ€˜]โ€™์„ ์ค‘์‹ฌ์œผ๋กœ ํ–‰๊ณผ ์—ด์„ ๊ตฌ๋ถ„ํ•˜์—ฌ โ€˜0โ€™๊ณผ โ€˜1โ€™์„ ์ด์ฐจ์› ๋ฐฐ์—ด์— ์ €์žฅํ•˜๋„๋ก ํ•œ๋‹ค.
[[1,1,1][0,0,0][1,0,1]]
์ผ ๊ฒฝ์šฐ


 [   [   1   ,   1   ,    1   ]   [   0   ,   0   ,   0   ]   [   1   ,   0   ,   1   ]   ]



1ํ–‰ 1์—ด์˜ ๋ฐฐ์—ด์— ๋‹ด์•„์„œ ์ฒซ ๋ฒˆ์งธ ์นธ๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•ด๊ฐ€๋ฉฐ 1๊ณผ 0์„ ๊ณจ๋ผ์„œ, โ€˜]โ€™์„ ๋งŒ๋‚˜๋ฉด ๋‹ค์Œ
ํ–‰์œผ๋กœ ์ž๋ฆฌ๋ฅผ ๋ฐ”๊พธ์–ด ์ €์žฅํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.


โ‘กreflexive
์ด์ฐจ์› ๋ฐฐ์—ด์— ๋‹ฎ๊ธด ์›์†Œ๋“ค์„ for๋ฌธ ์†์— if๋ฌธ์„ ๋„ฃ์–ด์„œ ํŒ๋ณ„ํ•œ๋‹ค.
์ฒ˜์Œ ๊ตฌํ•ด์ง„ ํ–‰๊ณผ ์—ด์˜ ํฌ๊ธฐ ์•ˆ์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” n=m์˜ ๊ฒฝ์šฐ๋ฅผ ๋ชจ๋‘ ์ƒ๊ฐํ•˜์—ฌ, ๊ทธ
๎ƒฅ๎ƒถ๎ƒถ๎ƒฒ๎“๎ƒฑ (n=m) ์ธ ๊ฒฝ์šฐ์˜ ์›์†Œ๋“ค์ด ๋ชจ๋‘ 1์ผ ๊ฒฝ์šฐ yes๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.


โ‘ขsymmetric
์ด์ฐจ์› ๋ฐฐ์—ด์—์„œ ๎ƒฅ๎ƒถ๎ƒถ๎ƒฒ๎“๎ƒฑ ๊ณผ ๎ƒฅ๎ƒถ๎ƒถ๎ƒฑ ๎“๎ƒฒ ์ธ ์›์†Œ๋“ค์˜ ์ˆœ์„œ์Œ๋ผ๋ฆฌ ๋ชจ๋‘ ๊ฐ™์€ ์›์†Œ๋ฅผ ๊ฐ€์งˆ ๊ฒฝ์šฐ yes
๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.


โ‘ฃirreflexive
์ฒ˜์Œ ๊ตฌํ•ด์ง„ ํ–‰๊ณผ ์—ด์˜ ํฌ๊ธฐ ์•ˆ์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” n=m์˜ ๊ฒฝ์šฐ๋ฅผ ๋ชจ๋‘ ์ƒ๊ฐํ•˜์—ฌ, ๊ทธ
๎ƒฅ๎ƒถ๎ƒถ๎ƒฒ๎“๎ƒฑ (n=m) ์ธ ๊ฒฝ์šฐ์˜ ์›์†Œ๋“ค์ด ๋ชจ๋‘ 0์ผ ๊ฒฝ์šฐ yes๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.




์—ญํ• ๋ถ„๋‹ด
   ๊น€๋ฌด๊ฒฝ         ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ ๋ฌธ์ž์—ด๋กœ ๋ฐ›์€ ํ–‰๋ ฌ์ •๋ณด๋ฅผ ์ด์ฐจ์› ๋ฐฐ์—ด์— ์ €์žฅ


   ๋ฐฑ์ข…๊ทผ          ์†Œ์ง‘๋‹จ ํ™œ๋™ ํšŒ์˜๋ก , ๋ณด๊ณ ์„œ ์ž‘์„ฑ , ํ”„๋กœ์ ํŠธ ์ผ์ • ์กฐ์œจ


   ๋ฐ•์ •ํ˜„             irreflexive์— ๋Œ€ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ƒ๊ฐ ์†Œ์Šค์งœ๊ธฐ


   ์ •์˜ˆ๋ฆฐ              reflexive์— ๋Œ€ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ƒ๊ฐ ์†Œ์Šค์งœ๊ธฐ


   ์žฅ๋™๊ทœ             symmetric์— ๋Œ€ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ƒ๊ฐ ์†Œ์Šค์งœ๊ธฐ
์ผ์ •
      2012.03.13~                 ํ”„๋กœ์ ํŠธ ํ™•์ธ ๋ฐ ๊ฐœ์ธ ์ž๋ฃŒ์ˆ˜์ง‘

      2012.03.17~                 ์ž๋ฃŒ ์ •๋ฆฌ์™€ ์—…๋ฌด๋ถ„๋‹ด, ๊ณ„ํš์ˆ˜๋ฆฝ

      2012.03.19~     ์ค‘๊ฐ„๋ณด๊ณ ์„œ ์ž‘์„ฑ, ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋”ฐ๋ฅธ ์ฝ”๋”ฉ๊ณผ ๋ฌธ์ œ์  ํŒŒ์•…

     2012.03.20~23                 ์ดˆ์•ˆ ์ž‘์„ฑ, ์ค‘๊ฐ„ ๋ณด๊ณ ์„œ ์ œ์ถœ

      2012.03.24~                    ๋ฌธ์ œ์  ๋ฐœ๊ฒฌ ๋ฐ ํ•ด๊ฒฐ

      2012.03.25                  ํ”„๋กœ์ ํŠธ ์™„์„ฑ, ์ตœ์ข…๋ณด๊ณ ์„œ ์ž‘์„ฑ

      2012.03.26                  ํ”„๋กœ์ ํŠธ ๊ฒฐ๊ณผ ๋ฐœํ‘œ, ๋ณด๊ณ ์„œ ์ œ์ถœ




    ์ดˆ์•ˆ
    ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์†Œ์Šค ์ดˆ์•ˆ




int ok;
for(i=1;i<=n;i++) //์ด์ค‘ํฌ๋ฌธ ์‹œ์ž‘ ํ–‰ n๊นŒ์ง€
{
          for(j=1;j<=m;j++) //์ด์ค‘ํฌ๋ฌธ ์‹œ์ž‘ ์—ด m๊นŒ์ง€
          {
                if(i==j) //๋งŒ์•ฝ ํ–‰๊ณผ ์—ด์ด ๊ฐ™์€ ์›์†Œ(๋Œ€๊ฐ์„ ์˜)๋“ค ์ด๋ฉด ๊ทธ๋ƒฅ ์ง„ํ–‰
                {
                      continue;
                }
                else //๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ์•ˆ์— ์žˆ๋Š” ์›์†Œ์™€ ๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๋“ค์„ ํŒ๋ณ„
{
                         if(re[n][m]!=re[m][n]) //๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๋“ค์ด ์„œ๋กœ ๋‹ค๋ฅด๋‹ค๋ฉด ok
๋ฅผ 1๋กœ ๋ฐ”๊ฟ”์คŒ
                         {
                                 ok=1;
                                 break;
                         }
                         else
                         {
                                 continue;
                         }
                }
        }
        if(ok==1)//๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๋“ค์ด ํ•˜๋‚˜๋ผ๋„ ๋‹ค๋ฅผ ๊ฒฝ์šฐ ok๊ฐ€ 1๋กœ ๋ณ€ํ™˜๋˜๋ฉฐ ๋ฐ”๋กœ no๋ฅผ
์ถœ๋ ฅํ•˜๊ณ  ์ด์ค‘ํฌ๋ฌธ์„ ๋ฒ—์–ด๋‚จ
        {
                printf("NO");
                break;
        }
        else if(ok==0)//ํ•œ๋ฒˆ๋„ 1๋กœ ๋ณ€ํ™˜๋˜์ง€ ์•Š๊ณ  ๋ชจ๋“  ์›์†Œ๊ฐ€ ๋Œ€์นญ๊ด€๊ณ„๋ฅผ ์„ฑ๋ฆฝํ•จ์„ ํŒ๋ณ„
ํ•œ ๊ฒฝ์šฐ yes๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ์ด์ค‘ํฌ๋ฌธ์€ ๋๋‚จ.
        {
                printf("yes");
}




์ตœ์ข…์†Œ์Šค
#include <stdio.h>
#include <stdlib.h>



int main()
{
    char arr[100], ch='0';
    char re[6][6];
    int i=0,j,a,ok=0;
    int x=0,y=0,n,m,num;
    char *in;


    while(ch!='n') //์ค„๋ฐ”๊ฟˆ์ด ์ž…๋ ฅ ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต๋ฌธ์ด ๋”.
    {
             ch=getchar(); //ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ํ•œ๋ฒˆ์— ํ•œ๊ธ€์ž์”ฉ ๋ฌธ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์Œ.
             arr[i]=ch; //์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž๋ฅผ ๋ฐฐ์—ด์— ์ €์žฅํ•จ.
             i++;
    }
    /*printf("n%dn", i);
    for(j=0;j<i;j++)
    {
             printf("%c", arr[j]);
    }*/
    for(j=0;j<i;j++)
    {
             if(arr[j]==']')
             {
                        x++;
             }
             else if(arr[j]=='0' || arr[j]=='1')
             {
                        y++;
             }
    }
    m=x-1;
    n=(int)y/m;
    printf("%d %dn",m,n);
    x=1, y=1;


    for(a=0;a<i;a++)
    {
             if(arr[a]=='0' || arr[a]=='1') //๋ฐฐ์—ด์—์„œ 0์ด๋‚˜ 1์ด ๋ฐœ๊ฒฌ๋˜๋ฉด ์ด์ฐจ์›๋ฐฐ
์—ด์— ์ €์žฅํ•จ.
             {
                        if(y==n) //์—ด์ด ์œ„์—์„œ ์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž์—ด์˜ ํ–‰๊ณผ ์ผ์น˜ํ• ๋•Œ, ๋‹ค์Œ
ํ–‰์œผ๋กœ ์ด๋™ํ•˜๋„๋ก X๋ฅผ ๋Š˜๋ ค์คŒ.
{
                               re[x][y]=arr[a];
                               x++;
                               y=1;
                    }
                    else //์ด์ฐจ์›๋ฐฐ์—ด์— ๊ฐ’์„ ์ €์žฅ.
                    {
                               re[x][y]=arr[a];
                               y++;
                    }
            }
    }


    /*for(x=1;x<6;x++)
    {
            for(y=1;y<6;y++)
            {
                    printf("%c", re[x][y]);
            }
            printf("n");
    }*/
    //๋Œ€์นญ
    for(i=1;i<=n;i++)
    {
            for(j=1;j<=m;j++)
            {
                    if(i!=j)
                    {
                               if(re[i][j]!=re[j][i]) //์ด์ฐจ์› ๋ฐฐ์—ด์—์„œ ๋Œ€์นญ๊ด€๊ณ„์— ๋†“์—ฌ
์žˆ๋Š” ์›์†Œ๋“ค์ด ๋‹ค๋ฅผ๋•Œ.
                               {
                                      //printf("ํ‹€๋ฆผ");
                                      ok=1; //์„ ์–ธ๋œ OK๋ฅผ 1๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ์คŒ.
                                      break;
                               }
                               else //๋ชจ๋‘ ๊ฐ™์„ ๊ฒฝ์šฐ ๋„˜์–ด๊ฐ.
                               {
                                      continue;
                               }
                    }
}
              if(ok==1) //๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๊ฐ€ ์„œ๋กœ ํ•˜๋‚˜๋ผ๋„ ๋‹ค๋ฅธ ์ˆ˜๋ฅผ ๊ฐ€์ง€๋ฉด OK๋Š” 1
์ด ์„ ์–ธ๋˜๋ฏ€๋กœ, ๋Œ€์นญ์ ๊ด€๊ณ„๊ฐ€ ์•„๋‹˜์„ ์ถœ๋ ฅํ•˜๊ณ  ๋ฐ˜๋ณต๋ฌธ ํƒˆ์ถœ.
              {
                      printf("๋Œ€์นญ์ ๊ด€๊ณ„ : NO");
                      break;
              }


      }
      if(ok==0) //OK๊ฐ€ 1๋กœ ๋ณ€ํ™˜๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๋Š” ๋ชจ๋“  ๋Œ€์นญ์  ๊ด€๊ณ„์— ์žˆ๋Š” ์›์†Œ๋“ค์ด
์ผ์น˜ํ•œ ๊ฒฝ์šฐ์ด๋ฏ€๋กœ ๋Œ€์นญ์ ๊ด€๊ณ„์ž„์„ ์ถœ๋ ฅ.
      {
              printf("๋Œ€์นญ์ ๊ด€๊ณ„ : YES");
      }
      //๋ฐ˜์‚ฌ์ 
      ok=0;


      for(i=1;i<=n;i++)
      {
              for(j=1;j<=m;j++)
              {
                      if(i==j)
                      {
                                 if(re[i][j]=='1') //ํ–‰๊ณผ ์—ด์ด ๊ฐ™์€ ์ฆ‰ ๋Œ€๊ฐ์„ ์˜ ์œ„์น˜์—
๋†“์—ฌ์žˆ๋Š” ์›์†Œ๋“ค์ด 1์ด๋ฉด ๋„˜์–ด๊ฐ.
                                 {
                                       continue;
                                 }
                                 else if(re[i][j]=='0') //ํ•˜๋‚˜๋ผ๋„ 0์ด ์žˆ๋‹ค๋ฉด OK๋ฅผ 1๋กœ
๋ณ€ํ™˜.
                                 {
                                       ok=1;
                                       break;
                                 }
                      }


              }
              if(ok==1) //ํ•˜๋‚˜๋ผ๋„ 0์ด ์žˆ์œผ๋ฉด ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„๊ฐ€ ์•„๋‹ˆ๋ฏ€๋กœ ์•„๋‹˜์„ ์ถœ๋ ฅํ•˜
๊ณ  ๋ฐ˜๋ณต๋ฌธ ํƒˆ์ถœ.
              {
                      printf("๋ฐ˜์‚ฌ์  : NO");
break;
                }


        }
        if(ok==0) //OK๊ฐ€ 1๋กœ ๋ณ€ํ™˜๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๋Š” ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„๋ผ๋Š” ๋œป์ด๋ฏ€๋กœ ๋งž๋‹ค๋Š” ๊ฒƒ
์„ ์ถœ๋ ฅ.
        {
                printf("๋ฐ˜์‚ฌ์  : YES");
        }


        //๋น„๋ฐ˜์‚ฌ์ ๊ด€๊ณ„-๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ 1๊ณผ 0๋งŒ ๋ฐ”๊พผ ์ƒํƒœ.
        ok=0;
        for(i=1;i<=n;i++)
        {
                for(j=1;j<=m;j++)
                {
                        if(i==j)
                        {
                                   if(re[i][j]=='0')
                                   {
                                            continue;
                                   }
                                   else if(re[i][j]=='1')
                                   {
                                            ok=1;
                                            break;
                                   }
                        }


                }
                if(ok==1)
                {
                        printf("๋น„๋ฐ˜์‚ฌ์  : NO");
                        break;
                }


        }
        if(ok==0)
        {
                printf("๋น„๋ฐ˜์‚ฌ์  : YES");
        }
}




<์ถœ๋ ฅ๊ฒฐ๊ณผ>

More Related Content

Viewers also liked

2012 Ds 06
2012 Ds 062012 Ds 06
2012 Ds 06Jungyerin
ย 
Virtual communities
Virtual communitiesVirtual communities
Virtual communitiesJfrogner
ย 
Matrik sda 02
Matrik sda 02Matrik sda 02
Matrik sda 02HADI Purwanto
ย 
Oracle - AP 1099 invc processing options
Oracle - AP 1099 invc processing optionsOracle - AP 1099 invc processing options
Oracle - AP 1099 invc processing optionspachbob
ย 
2012 Ds 04
2012 Ds 042012 Ds 04
2012 Ds 04Jungyerin
ย 
2012 Dm 01
2012 Dm 012012 Dm 01
2012 Dm 01Jungyerin
ย 
Mobi sender presentation7
Mobi sender presentation7Mobi sender presentation7
Mobi sender presentation7Diana Patterson
ย 
2012 Ds 01
2012 Ds 012012 Ds 01
2012 Ds 01Jungyerin
ย 
Slideshare Present Yourself
Slideshare Present YourselfSlideshare Present Yourself
Slideshare Present YourselfDiana Patterson
ย 

Viewers also liked (9)

2012 Ds 06
2012 Ds 062012 Ds 06
2012 Ds 06
ย 
Virtual communities
Virtual communitiesVirtual communities
Virtual communities
ย 
Matrik sda 02
Matrik sda 02Matrik sda 02
Matrik sda 02
ย 
Oracle - AP 1099 invc processing options
Oracle - AP 1099 invc processing optionsOracle - AP 1099 invc processing options
Oracle - AP 1099 invc processing options
ย 
2012 Ds 04
2012 Ds 042012 Ds 04
2012 Ds 04
ย 
2012 Dm 01
2012 Dm 012012 Dm 01
2012 Dm 01
ย 
Mobi sender presentation7
Mobi sender presentation7Mobi sender presentation7
Mobi sender presentation7
ย 
2012 Ds 01
2012 Ds 012012 Ds 01
2012 Ds 01
ย 
Slideshare Present Yourself
Slideshare Present YourselfSlideshare Present Yourself
Slideshare Present Yourself
ย 

Similar to 2012 Dm 02

2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdfjinwookhong
ย 
์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆ์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆkangseungwoo
ย 
2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdfkd19h
ย 
์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2
์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2
์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2KoChungWook
ย 
๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌ
๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌ๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌ
๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌsuitzero
ย 
๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3mil23
ย 
์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆ์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆkangseungwoo
ย 
An introduction to recursion
An introduction to recursionAn introduction to recursion
An introduction to recursionskku_npc
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)arong1234
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)
2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)
2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)pchmago
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)arong1234
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)arong1234
ย 
Start IoT with JavaScript - 2.์—ฐ์‚ฐ์ž
Start IoT with JavaScript - 2.์—ฐ์‚ฐ์žStart IoT with JavaScript - 2.์—ฐ์‚ฐ์ž
Start IoT with JavaScript - 2.์—ฐ์‚ฐ์žPark Jonggun
ย 
1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ
1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ
1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธํ™์ค€ ๊น€
ย 
Javascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌ
Javascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌJavascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌ
Javascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌETRIBE_STG
ย 
R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)
R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)
R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)Changki Yun
ย 

Similar to 2012 Dm 02 (16)

2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf
ย 
์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆ์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆ
ย 
2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf
ย 
์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2
์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2
์ด์‚ฐ์น˜์ˆ˜ํ•™ Project2
ย 
๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌ
๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌ๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌ
๋ถ€์šธ ๋Œ€์ˆ˜์™€ ์ปดํ“จํ„ฐ ๋…ผ๋ฆฌ
ย 
๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3
ย 
์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆ์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆ
ย 
An introduction to recursion
An introduction to recursionAn introduction to recursion
An introduction to recursion
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)
2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)
2012 Dm B3 ๋ณด๊ณ ์„œ(06๋ฐ•์ฐฌํฅ)
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
ย 
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
2012 Dm B3 ๋ณด๊ณ ์„œ(10๋ฐฑ์ง€์›)
ย 
Start IoT with JavaScript - 2.์—ฐ์‚ฐ์ž
Start IoT with JavaScript - 2.์—ฐ์‚ฐ์žStart IoT with JavaScript - 2.์—ฐ์‚ฐ์ž
Start IoT with JavaScript - 2.์—ฐ์‚ฐ์ž
ย 
1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ
1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ
1.3แ„Œแ…กแ†ผ แ„Žแ…กแ„‰แ…ฎ แ„‚แ…ฉแ‡แ„‹แ…ณแ†ซ แ„‘แ…ณแ„…แ…ฉแ„‰แ…ตแ„Œแ…ฅ(higher order procedure)แ„…แ…ฉ แ„‹แ…ญแ„‹แ…ฃแ†จแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ
ย 
Javascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌ
Javascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌJavascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌ
Javascript ์™„๋ฒฝ ๊ฐ€์ด๋“œ ์ •๋ฆฌ
ย 
R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)
R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)
R.R.E.F.U (Uniqueness of Reduced Row Echelon Form)
ย 

2012 Dm 02

  • 1. Project #2 ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ ์ด์‚ฐ์น˜ ์ˆ˜ํ•™ B1 ์กฐ์žฅ: 09 ๋ฐฑ์ข…๊ทผ ์กฐ์›: 08 ๊น€๋ฌด๊ฒฝ, 11 ์žฅ๋™๊ทœ , 11 ๋ฐ•์ •ํ˜„ , 11 ์ •์˜ˆ๋ฆฐ
  • 2. ๊ด€๊ณ„์ฐพ๊ธฐ โ€ขํ–‰๋ ฌ ํ‘œํ˜„ ์ž…๋ ฅ์„ ์ž…๋ ฅ๋ฐ›์•„์„œ reflexive, symmetric, irreflexive ๊ฒฝ์šฐ์— yes/no์ธ์ง€ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ ์ž‘์„ฑํ•˜๊ธฐ โ€ข์ž…๋ ฅ: 3x3 ํ–‰๋ ฌ์ผ ๊ฒฝ์šฐ: [[1,0,0][1,1,0][0,1,0]] โ€ข2x2, 2x3 ~ 4x5, 5x4, 5x5 ๊นŒ์ง€ ๊ฐ€๋Šฅ โ€ข์ถœ๋ ฅ yes/no
  • 3. ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ๋‚ด์šฉ ๋ฐ ํ•จ์ˆ˜ 1. binary relation โ‘ ๋‘ ์ง‘ํ•ฉ A, B์— ๋Œ€ํ•œ 2ํ•ญ ๊ด€๊ณ„ R๋Š” ๋‘ ์ง‘ํ•ฉ์˜ ๋ฐ์นด๋ฅดํŠธ ๊ณฑ Aร—B์˜ ๋ถ€๋ถ„ ์ง‘ํ•ฉ์ด๋‹ค. ์ฆ‰, R โŠ†Aร—B, (a, b)โˆˆR์ผ ๋•Œ aRc๋กœ ํ‘œ์‹œํ•œ๋‹ค. โ‘ก์ฐจ์ˆ˜๊ฐ€ 2์ธ ๊ด€๊ณ„. ์—ฌ๊ธฐ์„œ ์ฐจ์ˆ˜๋Š” ๊ด€๊ณ„ ๋‚ด์˜ ์†์„ฑ ์ˆ˜๋ฅผ ๋งํ•œ๋‹ค. 2. reflexive ๊ด€๊ณ„ R์ด ์ •์˜๋œ ์ง‘ํ•ฉ์˜ ๋ชจ๋“  ์›์†Œ a์— ๋Œ€ํ•ด์„œ aRa๊ฐ€ ์„ฑ๋ฆฝํ•˜๋Š” ๊ฒฝ์šฐ์— ๋Œ€ํ•ด R์„ ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„๋ผ๊ณ  ํ•œ๋‹ค. 3. symmetric ์ง‘ํ•ฉ์˜ ๋‘ ์›์†Œ a, b์— ๋Œ€ํ•ด์„œ a R b ๊ด€๊ณ„๊ฐ€ ์„ฑ๋ฆฝํ•  ๋•Œ b R a์˜ ๊ด€๊ณ„๋„ ์„ฑ๋ฆฝํ•˜๋ฉด R์„ ๋Œ€ ์นญ์„ฑ ๊ด€๊ณ„๋ผ ํ•œ๋‹ค. 4. irreflexive ๊ด€๊ณ„ R์ด ์ •์˜๋œ ์ง‘ํ•ฉ A์˜ ๋ชจ๋“  ์›์†Œ a์— ๋Œ€ํ•˜์—ฌ a R a์˜ ๊ด€๊ณ„๊ฐ€ ์„ฑ๋ฆฝํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ R์„ ๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„๋ผ ํ•œ๋‹ค. ๋ฐ˜์‚ฌ,๋น„๋ฐ˜์‚ฌ,๋Œ€์นญ,๋ฐ˜๋Œ€์นญ ๊ด€๊ณ„ ๋ถ€์—ฐ ์„ค๋ช… ๋ฐ ์˜ˆ์ œ ํ’€์ด ๊ฐ ๊ด€๊ณ„์— ๊ด€ํ•ด์„œ ํ–‰๋ ฌ์„ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฌด์Šจ ๊ด€๊ณ„์ธ์ง€ ํŒŒ์•…!! ย ์˜ˆ์ œ 1) R1= {(1, 1), (1, 2), (1, 3), (3, 3)} => (2,2)๊ฐ€ ์ถ”๊ฐ€๋˜์•ผ ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„ {(1,1),(1,2),(1,3),(3,3),(2,2)} 2) R2 = {(1,2),(2,1),(1,3),(2,3),(3,1),(3,2)}
  • 4. => ๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์— ์žˆ๋‹ค (1,1), (2,2), (3,3) ์ด ์—†์Œ (์•„๋ž˜ ๋ถ€๊ฐ€ ์„ค๋ช… ์ฐธ์กฐ) => R2๋Š” ๋Œ€์นญ์  ๊ด€๊ณ„์— ์žˆ๋‹ค (์•„๋ž˜ ๋ถ€๊ฐ€ ์„ค๋ช… ์ฐธ์กฐ) a.{(a,b),(a,c),(a,d),(a,e)} b.{(a,b),(b,a),(b,d),(d,b),(a,e),(e,a)} c.{(a,a),(b,b),(c,c),(d,d)} a.{(a,b),(a,c),(a,d),(a,e)} a. {(a,b),(a,c),(a,d),(a,e)} reflexive๊ฐ€ ์•„๋‹Œ ๊ฒƒ์€ ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค( a๊ฐ€ ์“ฐ์˜€๋Š”๋ฐ (a, a)๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค ). (a,b)๊ฐ€ ์žˆ๋Š”๋ฐ (b,a)๊ฐ€ ์—†์œผ๋ฏ€๋กœ symmetric์ด ์•„๋‹™๋‹ˆ๋‹ค. x R y ์ด๊ณ  y R z ์ด๋ฉด x R z ๋ฅผ ํ•ญ์ƒ ๋งŒ์กฑํ•˜๋ฉด transitive ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ x R y ์ด๊ณ  y R z ์ธ ๊ฒฝ์šฐ๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์œ„์˜ ๋ช…์ œ์˜ ์กฐ๊ฑด์ด ํ•ญ์ƒ F ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ฐธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ transitive ํ•ฉ๋‹ˆ๋‹ค. ( ์ด๋Ÿฐ ๊ฒƒ์„ vacuus truth ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค ). b.{(a,b),(b,a),(b,d),(d,b),(a,e),(e,a)} reflexive๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ( a๊ฐ€ ์“ฐ์˜€๋Š”๋ฐ (a, a) ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค ). (a,b), (b,a) ๊ฐ€ ์žˆ๋Š”๋ฐ (a,a)๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. transitive๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. x R y => y R x ๋ฅผ ๋ชจ๋‘ ์„ฑ๋ฆฝํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ symmetric ํ•ฉ๋‹ˆ๋‹ค. c.{(a,a),(b,b),(c,c),(d,d)} a, b, c, d ๋ชจ๋‘ (a, a), (b, b), (c, c), (d, d) ๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ reflexive์ž…๋‹ˆ๋‹ค. ๋ชจ๋‘ ์Œ์ด ๊ฐ™์€ ๋‘ ๊ฐœ๋กœ ๋˜์–ด์žˆ์œผ๋ฏ€๋กœ ๋ถ„๋ช…ํžˆ symmetric์ž…๋‹ˆ๋‹ค. x R y and y R z ์ธ ๊ฒƒ์„ ๋งŒ์กฑํ•˜๋Š” ๊ฒƒ์ด ์—†์œผ๋ฏ€๋กœ ์œ„์—์„œ ์‚ดํŽด๋ณธ ๋ฐ” ๋Œ€๋กœ transitive ์ž…๋‹ˆ ๋‹ค. (1,1) ์˜ ์˜๋ฏธ๋Š” 1ํ–‰์—์„œ 1์—ด๋กœ ๊ฐ„๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  R์˜ ๊ด€๊ณ„๊ฐ€ ์žˆ์œผ๋ฉด ํ–‰๋ ฌ์ƒ์— 1์ด๋ผ๊ณ  ์ ์œผ์‹œ๊ณ , ์—†์œผ๋ฉด 0์ด๋ผ๊ณ  ์“ฐ์„ธ์š”. 1 1 1 0 0 0
  • 5. 0 0 1 ย  *๋ฐ˜์‚ฌ์  ๊ด€๊ณ„ (reflexive) ๋Œ€๊ฐ์„  ์„ฑ๋ถ„์ด ๋ชจ๋‘ 1์ด๋ฉด, ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์ด๋‹ค. ย  ์˜ˆ์ œ 1 0 0 1 1 0 0 0 1 ย  *๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„ (irreflexive) ๋Œ€๊ฐ์„  ์„ฑ๋ถ„์ด ๋ชจ๋‘ 0์ด๋ฉด, ๋น„๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์ด๋‹ค. ย  ์˜ˆ์ œ 0ย 1 0 1ย 0 1 0ย 1 0 ย  *๋Œ€์นญ์  ๊ด€๊ณ„ (symmetric) ๋Œ€๊ฐ์„  ์„ฑ๋ถ„์„ ์ค‘์‹ฌ์œผ๋กœ ๋Œ€์นญ์ ์ด์–ด์•ผ ํ•œ๋‹ค. ย ์˜ˆ์ œย  (์ƒ‰์ด ๊ฐ™์€ ๊ฒƒ๋ผ๋ฆฌ ๋Œ€์นญ์ž„์„ ์˜๋ฏธํ•จ) 0ย 1 0 1ย 1 1 0ย 1 0 ย  *๋ฐ˜๋Œ€์นญ์  ๊ด€๊ณ„ (Anti-symmetric) ๋Œ€๊ฐ์„  ์„ฑ๋ถ„์„ ์ค‘์‹ฌ์œผ๋กœ ์„œ๋กœ ๋ฐ˜๋Œ€์นญ์ ์ด์–ด์•ผ ํ•œ๋‹ค. ย  ์˜ˆ์ œย  (์ƒ‰์ด ๊ฐ™์€ ๊ฒƒ๋ผ๋ฆฌ ๋ฐ˜๋Œ€์นญ์ž„์„ ์˜๋ฏธํ•จ) 0ย 1 0 0ย 1 0 1ย 1 0 ย 
  • 6. ๋ถ€์—ฐ์„ค๋ช…ย  ์˜ˆ์ œ1) R= {(1, 1), (1, 2), (1, 3), (3, 3)}์—์„œ ...(1,1) ์˜ ์˜๋ฏธ๋Š” 1ํ–‰์—์„œ 1์—ด๋กœ ๊ฐ„๋‹ค๋Š” ๊ฒƒ ์ด๋ž๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  R์˜ ๊ด€๊ณ„๊ฐ€ ์žˆ์œผ๋ฉด ํ–‰๋ ฌ์ƒ์— 1์ด๋ผ๊ณ  ์ ์œผ์‹œ๊ณ , ์—†์œผ๋ฉด 0์ด๋ผ๊ณ  ์“ฐ์„ธ์š”. ์ฐธ๊ณ  ๊ทธ๋ฆผ ๋Œ€๊ฐ์„  ์„ฑ๋ถ„์€ โ†˜ ๋ฐฉํ–ฅ๋งŒ ๋ฉ๋‹ˆ๋‹ค. 1 0 0 1 1 0 0 0 1 ย ์ถ”์ด์  ๊ด€๊ณ„ ์ถœ์ฒ˜ : http://kin.naver.com/
  • 7. ํ•„์š”ํ•œ ํ•จ์ˆ˜ getchar ์›ํ˜• : int getchar(void) ํ—ค๋”ํŒŒ์ผ : stdio.h ๊ธฐ๋Šฅ ํ‚ค๋ณด๋“œ์—์„œ ๋ฌธ์ž ํ•˜๋‚˜๋ฅผ ์ฝ์–ด์˜จ๋‹ค. ๊ธฐ์ • ์ŠคํŠธ๋ฆผ์ธ ํ‘œ์ค€ ์ž…๋ ฅ ์ŠคํŠธ๋ฆผ์œผ๋กœ๋ถ€ํ„ฐ ํ•œ ๋ฌธ์ž๋ฅผ ์ฝ์–ด์˜ค๋Š” ํ•จ์ˆ˜์ž„์„ ์•Œ ์ˆ˜ ์žˆ ๋‹ค. stdin์€ ๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— getchar๋„ ๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํŠน์ง• ๋ฒ„ํผ์— ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ๊บผ๋‚ด ๋ฆฌํ„ดํ•˜๊ณ  ๊บผ๋‚ธ ๋ฌธ์ž๋ฅผ ๋ฒ„ํผ์—์„œ ์ง€์šด๋‹ค. ๋ฒ„ํผ๊ฐ€ ๋น„์–ด ์žˆ์œผ๋ฉด ์ž…๋ ฅ์„ ๋ฐ›๋˜ Enterํ‚ค๊ฐ€ ๋“ค์–ด์˜ฌ ๋•Œ๊นŒ์ง€ ์ž…๋ ฅ์„ ๋ฐ›๋Š”๋‹ค. ์ถœ์ฒ˜: www.winapi.co.kr ๋ฌธ์ œํ•ด๊ฒฐ์ฑ… ์•Œ๊ณ ๋ฆฌ์ฆ˜ โ‘ ๋ฌธ์ž์—ด์„ ๋ฐ›์•„ ์ด์ฐจ์›๋ฐฐ์—ด์— ๋„ฃ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜. getcharํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ๋ฌธ์ž์—ด์„ ๊ฐ ๊ธ€์ž์”ฉ ๋ฐ›์•„์„œ ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค. ๋ฐฐ์—ด์— ์ €์žฅ๋œ '['์˜ ๊ฐœ์ˆ˜์™€ โ€˜0โ€™๊ณผ โ€˜1โ€™์˜ ๊ฐœ์ˆ˜๋กœ ํ–‰๊ณผ ์—ด์„ ํฌ๊ธฐ๋ฅผ ํŒ๋‹จํ•œ๋‹ค. ์„ ์–ธ๋œ ์ด์ฐจ์› ๋ฐฐ์—ด์˜ ํ–‰๊ณผ ์—ด์„ ํƒ์ƒ‰ํ•˜๊ธฐ ์œ„ํ•ด ์ด์ค‘ํฌ๋ฌธ์„ ๋งŒ๋“ ๋‹ค. ์ด์ค‘ํฌ๋ฌธ ์•ˆ์— ์ฒ˜์Œ ๋ฌธ์ž์—ด์„ ๋ฐ›์•˜๋˜ ๋ฐฐ์—ด์„ ํƒ์ƒ‰ํ•˜์—ฌ ์ˆซ์ž๋ฅผ ๋งŒ๋‚  ๊ฒฝ์šฐ ์ด์ฐจ์› ๋ฐฐ์—ด์— ์ € ์žฅํ•˜๋„๋ก ํ•œ๋‹ค. โ€˜[โ€™์™€ โ€˜]โ€™์„ ์ค‘์‹ฌ์œผ๋กœ ํ–‰๊ณผ ์—ด์„ ๊ตฌ๋ถ„ํ•˜์—ฌ โ€˜0โ€™๊ณผ โ€˜1โ€™์„ ์ด์ฐจ์› ๋ฐฐ์—ด์— ์ €์žฅํ•˜๋„๋ก ํ•œ๋‹ค. [[1,1,1][0,0,0][1,0,1]] ์ผ ๊ฒฝ์šฐ [ [ 1 , 1 , 1 ] [ 0 , 0 , 0 ] [ 1 , 0 , 1 ] ] 1ํ–‰ 1์—ด์˜ ๋ฐฐ์—ด์— ๋‹ด์•„์„œ ์ฒซ ๋ฒˆ์งธ ์นธ๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•ด๊ฐ€๋ฉฐ 1๊ณผ 0์„ ๊ณจ๋ผ์„œ, โ€˜]โ€™์„ ๋งŒ๋‚˜๋ฉด ๋‹ค์Œ
  • 8. ํ–‰์œผ๋กœ ์ž๋ฆฌ๋ฅผ ๋ฐ”๊พธ์–ด ์ €์žฅํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค. โ‘กreflexive ์ด์ฐจ์› ๋ฐฐ์—ด์— ๋‹ฎ๊ธด ์›์†Œ๋“ค์„ for๋ฌธ ์†์— if๋ฌธ์„ ๋„ฃ์–ด์„œ ํŒ๋ณ„ํ•œ๋‹ค. ์ฒ˜์Œ ๊ตฌํ•ด์ง„ ํ–‰๊ณผ ์—ด์˜ ํฌ๊ธฐ ์•ˆ์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” n=m์˜ ๊ฒฝ์šฐ๋ฅผ ๋ชจ๋‘ ์ƒ๊ฐํ•˜์—ฌ, ๊ทธ ๎ƒฅ๎ƒถ๎ƒถ๎ƒฒ๎“๎ƒฑ (n=m) ์ธ ๊ฒฝ์šฐ์˜ ์›์†Œ๋“ค์ด ๋ชจ๋‘ 1์ผ ๊ฒฝ์šฐ yes๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. โ‘ขsymmetric ์ด์ฐจ์› ๋ฐฐ์—ด์—์„œ ๎ƒฅ๎ƒถ๎ƒถ๎ƒฒ๎“๎ƒฑ ๊ณผ ๎ƒฅ๎ƒถ๎ƒถ๎ƒฑ ๎“๎ƒฒ ์ธ ์›์†Œ๋“ค์˜ ์ˆœ์„œ์Œ๋ผ๋ฆฌ ๋ชจ๋‘ ๊ฐ™์€ ์›์†Œ๋ฅผ ๊ฐ€์งˆ ๊ฒฝ์šฐ yes ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. โ‘ฃirreflexive ์ฒ˜์Œ ๊ตฌํ•ด์ง„ ํ–‰๊ณผ ์—ด์˜ ํฌ๊ธฐ ์•ˆ์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” n=m์˜ ๊ฒฝ์šฐ๋ฅผ ๋ชจ๋‘ ์ƒ๊ฐํ•˜์—ฌ, ๊ทธ ๎ƒฅ๎ƒถ๎ƒถ๎ƒฒ๎“๎ƒฑ (n=m) ์ธ ๊ฒฝ์šฐ์˜ ์›์†Œ๋“ค์ด ๋ชจ๋‘ 0์ผ ๊ฒฝ์šฐ yes๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ์—ญํ• ๋ถ„๋‹ด ๊น€๋ฌด๊ฒฝ ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ ๋ฌธ์ž์—ด๋กœ ๋ฐ›์€ ํ–‰๋ ฌ์ •๋ณด๋ฅผ ์ด์ฐจ์› ๋ฐฐ์—ด์— ์ €์žฅ ๋ฐฑ์ข…๊ทผ ์†Œ์ง‘๋‹จ ํ™œ๋™ ํšŒ์˜๋ก , ๋ณด๊ณ ์„œ ์ž‘์„ฑ , ํ”„๋กœ์ ํŠธ ์ผ์ • ์กฐ์œจ ๋ฐ•์ •ํ˜„ irreflexive์— ๋Œ€ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ƒ๊ฐ ์†Œ์Šค์งœ๊ธฐ ์ •์˜ˆ๋ฆฐ reflexive์— ๋Œ€ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ƒ๊ฐ ์†Œ์Šค์งœ๊ธฐ ์žฅ๋™๊ทœ symmetric์— ๋Œ€ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ƒ๊ฐ ์†Œ์Šค์งœ๊ธฐ
  • 9. ์ผ์ • 2012.03.13~ ํ”„๋กœ์ ํŠธ ํ™•์ธ ๋ฐ ๊ฐœ์ธ ์ž๋ฃŒ์ˆ˜์ง‘ 2012.03.17~ ์ž๋ฃŒ ์ •๋ฆฌ์™€ ์—…๋ฌด๋ถ„๋‹ด, ๊ณ„ํš์ˆ˜๋ฆฝ 2012.03.19~ ์ค‘๊ฐ„๋ณด๊ณ ์„œ ์ž‘์„ฑ, ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋”ฐ๋ฅธ ์ฝ”๋”ฉ๊ณผ ๋ฌธ์ œ์  ํŒŒ์•… 2012.03.20~23 ์ดˆ์•ˆ ์ž‘์„ฑ, ์ค‘๊ฐ„ ๋ณด๊ณ ์„œ ์ œ์ถœ 2012.03.24~ ๋ฌธ์ œ์  ๋ฐœ๊ฒฌ ๋ฐ ํ•ด๊ฒฐ 2012.03.25 ํ”„๋กœ์ ํŠธ ์™„์„ฑ, ์ตœ์ข…๋ณด๊ณ ์„œ ์ž‘์„ฑ 2012.03.26 ํ”„๋กœ์ ํŠธ ๊ฒฐ๊ณผ ๋ฐœํ‘œ, ๋ณด๊ณ ์„œ ์ œ์ถœ ์ดˆ์•ˆ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์†Œ์Šค ์ดˆ์•ˆ int ok; for(i=1;i<=n;i++) //์ด์ค‘ํฌ๋ฌธ ์‹œ์ž‘ ํ–‰ n๊นŒ์ง€ { for(j=1;j<=m;j++) //์ด์ค‘ํฌ๋ฌธ ์‹œ์ž‘ ์—ด m๊นŒ์ง€ { if(i==j) //๋งŒ์•ฝ ํ–‰๊ณผ ์—ด์ด ๊ฐ™์€ ์›์†Œ(๋Œ€๊ฐ์„ ์˜)๋“ค ์ด๋ฉด ๊ทธ๋ƒฅ ์ง„ํ–‰ { continue; } else //๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ์•ˆ์— ์žˆ๋Š” ์›์†Œ์™€ ๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๋“ค์„ ํŒ๋ณ„
  • 10. { if(re[n][m]!=re[m][n]) //๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๋“ค์ด ์„œ๋กœ ๋‹ค๋ฅด๋‹ค๋ฉด ok ๋ฅผ 1๋กœ ๋ฐ”๊ฟ”์คŒ { ok=1; break; } else { continue; } } } if(ok==1)//๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๋“ค์ด ํ•˜๋‚˜๋ผ๋„ ๋‹ค๋ฅผ ๊ฒฝ์šฐ ok๊ฐ€ 1๋กœ ๋ณ€ํ™˜๋˜๋ฉฐ ๋ฐ”๋กœ no๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ์ด์ค‘ํฌ๋ฌธ์„ ๋ฒ—์–ด๋‚จ { printf("NO"); break; } else if(ok==0)//ํ•œ๋ฒˆ๋„ 1๋กœ ๋ณ€ํ™˜๋˜์ง€ ์•Š๊ณ  ๋ชจ๋“  ์›์†Œ๊ฐ€ ๋Œ€์นญ๊ด€๊ณ„๋ฅผ ์„ฑ๋ฆฝํ•จ์„ ํŒ๋ณ„ ํ•œ ๊ฒฝ์šฐ yes๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ์ด์ค‘ํฌ๋ฌธ์€ ๋๋‚จ. { printf("yes"); } ์ตœ์ข…์†Œ์Šค #include <stdio.h> #include <stdlib.h> int main()
  • 11. { char arr[100], ch='0'; char re[6][6]; int i=0,j,a,ok=0; int x=0,y=0,n,m,num; char *in; while(ch!='n') //์ค„๋ฐ”๊ฟˆ์ด ์ž…๋ ฅ ๋  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต๋ฌธ์ด ๋”. { ch=getchar(); //ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ํ•œ๋ฒˆ์— ํ•œ๊ธ€์ž์”ฉ ๋ฌธ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์Œ. arr[i]=ch; //์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž๋ฅผ ๋ฐฐ์—ด์— ์ €์žฅํ•จ. i++; } /*printf("n%dn", i); for(j=0;j<i;j++) { printf("%c", arr[j]); }*/ for(j=0;j<i;j++) { if(arr[j]==']') { x++; } else if(arr[j]=='0' || arr[j]=='1') { y++; } } m=x-1; n=(int)y/m; printf("%d %dn",m,n); x=1, y=1; for(a=0;a<i;a++) { if(arr[a]=='0' || arr[a]=='1') //๋ฐฐ์—ด์—์„œ 0์ด๋‚˜ 1์ด ๋ฐœ๊ฒฌ๋˜๋ฉด ์ด์ฐจ์›๋ฐฐ ์—ด์— ์ €์žฅํ•จ. { if(y==n) //์—ด์ด ์œ„์—์„œ ์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž์—ด์˜ ํ–‰๊ณผ ์ผ์น˜ํ• ๋•Œ, ๋‹ค์Œ ํ–‰์œผ๋กœ ์ด๋™ํ•˜๋„๋ก X๋ฅผ ๋Š˜๋ ค์คŒ.
  • 12. { re[x][y]=arr[a]; x++; y=1; } else //์ด์ฐจ์›๋ฐฐ์—ด์— ๊ฐ’์„ ์ €์žฅ. { re[x][y]=arr[a]; y++; } } } /*for(x=1;x<6;x++) { for(y=1;y<6;y++) { printf("%c", re[x][y]); } printf("n"); }*/ //๋Œ€์นญ for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { if(i!=j) { if(re[i][j]!=re[j][i]) //์ด์ฐจ์› ๋ฐฐ์—ด์—์„œ ๋Œ€์นญ๊ด€๊ณ„์— ๋†“์—ฌ ์žˆ๋Š” ์›์†Œ๋“ค์ด ๋‹ค๋ฅผ๋•Œ. { //printf("ํ‹€๋ฆผ"); ok=1; //์„ ์–ธ๋œ OK๋ฅผ 1๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ์คŒ. break; } else //๋ชจ๋‘ ๊ฐ™์„ ๊ฒฝ์šฐ ๋„˜์–ด๊ฐ. { continue; } }
  • 13. } if(ok==1) //๋Œ€์นญ๊ด€๊ณ„์˜ ์›์†Œ๊ฐ€ ์„œ๋กœ ํ•˜๋‚˜๋ผ๋„ ๋‹ค๋ฅธ ์ˆ˜๋ฅผ ๊ฐ€์ง€๋ฉด OK๋Š” 1 ์ด ์„ ์–ธ๋˜๋ฏ€๋กœ, ๋Œ€์นญ์ ๊ด€๊ณ„๊ฐ€ ์•„๋‹˜์„ ์ถœ๋ ฅํ•˜๊ณ  ๋ฐ˜๋ณต๋ฌธ ํƒˆ์ถœ. { printf("๋Œ€์นญ์ ๊ด€๊ณ„ : NO"); break; } } if(ok==0) //OK๊ฐ€ 1๋กœ ๋ณ€ํ™˜๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๋Š” ๋ชจ๋“  ๋Œ€์นญ์  ๊ด€๊ณ„์— ์žˆ๋Š” ์›์†Œ๋“ค์ด ์ผ์น˜ํ•œ ๊ฒฝ์šฐ์ด๋ฏ€๋กœ ๋Œ€์นญ์ ๊ด€๊ณ„์ž„์„ ์ถœ๋ ฅ. { printf("๋Œ€์นญ์ ๊ด€๊ณ„ : YES"); } //๋ฐ˜์‚ฌ์  ok=0; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { if(i==j) { if(re[i][j]=='1') //ํ–‰๊ณผ ์—ด์ด ๊ฐ™์€ ์ฆ‰ ๋Œ€๊ฐ์„ ์˜ ์œ„์น˜์— ๋†“์—ฌ์žˆ๋Š” ์›์†Œ๋“ค์ด 1์ด๋ฉด ๋„˜์–ด๊ฐ. { continue; } else if(re[i][j]=='0') //ํ•˜๋‚˜๋ผ๋„ 0์ด ์žˆ๋‹ค๋ฉด OK๋ฅผ 1๋กœ ๋ณ€ํ™˜. { ok=1; break; } } } if(ok==1) //ํ•˜๋‚˜๋ผ๋„ 0์ด ์žˆ์œผ๋ฉด ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„๊ฐ€ ์•„๋‹ˆ๋ฏ€๋กœ ์•„๋‹˜์„ ์ถœ๋ ฅํ•˜ ๊ณ  ๋ฐ˜๋ณต๋ฌธ ํƒˆ์ถœ. { printf("๋ฐ˜์‚ฌ์  : NO");
  • 14. break; } } if(ok==0) //OK๊ฐ€ 1๋กœ ๋ณ€ํ™˜๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๋Š” ๋ฐ˜์‚ฌ์  ๊ด€๊ณ„๋ผ๋Š” ๋œป์ด๋ฏ€๋กœ ๋งž๋‹ค๋Š” ๊ฒƒ ์„ ์ถœ๋ ฅ. { printf("๋ฐ˜์‚ฌ์  : YES"); } //๋น„๋ฐ˜์‚ฌ์ ๊ด€๊ณ„-๋ฐ˜์‚ฌ์  ๊ด€๊ณ„์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ 1๊ณผ 0๋งŒ ๋ฐ”๊พผ ์ƒํƒœ. ok=0; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { if(i==j) { if(re[i][j]=='0') { continue; } else if(re[i][j]=='1') { ok=1; break; } } } if(ok==1) { printf("๋น„๋ฐ˜์‚ฌ์  : NO"); break; } } if(ok==0) { printf("๋น„๋ฐ˜์‚ฌ์  : YES"); }