게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
심심하니까 문제 하나.
게시물ID : programmer_4721짧은주소 복사하기
작성자 : RGB
추천 : 1
조회수 : 729회
댓글수 : 15개
등록시간 : 2014/07/27 13:11:29
http://pastebin.com/embed_iframe.php?i=bK6FuhV1

코드 중간의 주석 부분에 적당한 코드를 집어넣어 "You solved the problem!" (쌍 따옴표 제외)을 출력하게 하시오.
단, 집어넣은 코드는 11바이트 이하 여야한다..


ps) 아이프레임 src를 날려버리네요... 주소로 수정
꼬릿말 보기
전체 추천리스트 보기
2014-07-27 13:51:29추천 0
func(var--);
댓글 0개 ▲
2014-07-27 14:02:34추천 0
1 는 12바이트
댓글 0개 ▲
[본인삭제]불R탈탈털림
2014-07-27 15:07:47추천 1
댓글 0개 ▲
2014-07-27 15:15:51추천 0
1 는 13바이트..
댓글 0개 ▲
[본인삭제]불R탈탈털림
2014-07-27 15:20:19추천 1
댓글 0개 ▲
2014-07-27 15:29:07추천 0
흠..    return
/** INPUT YOUR CODE **/
5;

이것을 보고..

return func(var=-5); 를 생각해야한다니.....
까다롭네요.
댓글 0개 ▲
2014-07-27 15:44:12추천 0
주석있는위치 5; 위에서만 적어야하는게 아닐까요?
댓글 0개 ▲
2014-07-27 18:56:52추천 0
컴파일이 되어야 하니깐,
func(var--)+
라고 생각했는데 12글자네요.

그리고, 불R 님 답이  맞다면,, 별로 이쁘지가 않아서 수긍이 안될꺼 같아요.
댓글 0개 ▲
MGS
2014-07-27 19:18:32추천 0
var 하고 func() 가 반드시 들어가야하는건 자명하니 9바이트는 이미 먹힙니다.
(main을 호출하는건 뒤에서 그때그때 고려하겠습니다. 어차피 함수명 길이는 똑같으니까...)

남은건 2바이트.

if문 안에 들어갔을 때, func이 호출되기 전에 var의 값이 변하지 않으면 무한루프에 걸리기 때문에 var 값은 func가 호출되기 전에 변해야합니다.
이는 호출할 함수가 main인 경우에도 똑같습니다. (main은 또다시 func를 호출하므로...)
func과 main의 리턴값이 다르기 때문에 어떤 것을 선택하느냐에 따라서 결과가 달라질 수도 있지만 일단 func 안의 if문은 반드시 한 번은 들어가기 때문에 var값을 미리 변화시켜야한다는 사실에는 변함이 없습니다.

var 값이 변하려면 반드시 대입연산자,(=) 복합대입연산자(+=, -=, ...), 증감연산자(++, --)가 필요합니다.

1. += 같은 복합대입연산자를 쓸 때, 남는 2바이트를 모두 써버립니다. 문법을 지키려면 최소한 답의 마지막에는 연산자가 등장해야 합니다.
하지만 그런 경우를 모두 따져도 다 문법에러. (예) func(var)+=

2. ++ 같은 증감연산자를 쓸 때, 답의 마지막 부분에 뭐가 등장해도 문법에러가 납니다. (예) func(var)++

3. 남은건 (대입연산자 =, 모르는 문자 ?) 조합입니다.

--(func() 의 arg가 없는 경우)

a. var?func()=
b. func()?var=
c. var=func()?

--(func() 의 arg가 var 인 경우)

d. ?func(var)=

나머지 경우는 죄다 적법치 못한 문법입니다.
댓글 0개 ▲
MGS
2014-07-27 19:18:49추천 0
모르는 문자 ? 에는 상수나 변수가 들어가지 못함이 확실합니다. 따라서 연산자입니다.

경우 a.
?의 우선순위가 =보다 높은 경우 : func() 먼저 호출해서 무한루프
~~ 낮은 경우 : func() 에 대입? 비적법
~~ 같은 경우 : 같은 경우는 ?가 =인 경우입니다. 위와 같은 이유로 탈락.

경우 b.
?의 우선순위가 =보다 높은 경우 : 대입연산자의 좌변은 반드시 l-value 이어야 합니다. l-value를 리턴하면서 operand가 2개인 연산자는 "없습니다."
~~ 낮은 경우 : ?는 콤마 연산자입니다. 호오? 뭔가 되는거같은게 등장했네요. 아쉽지만 런타임 에러납니다.
~~ 같은 경우 : func() 에 대입? 비적법

경우 c.
?의 우선순위가 =보다 높은 경우 : func 먼저 호출해서 무한루프
~~ 낮은 경우 : func 먼저 호출해서 무한루프
~~ 같은 경우 : func() 에 대입? 비적법

경우 d.
?는 단항연산자네요. func가 대입당하려면 ?가 l-value 를 뱉는 연산자여야하는데 하나 있습니다. * 연산자.... 탈락.
댓글 0개 ▲
MGS
2014-07-27 19:19:07추천 0
위의 모든 경우는 func이 main이라도 똑같습니다.

어떤 경우라도 답이 나오지 못함을 확인했습니다.

∴ 문제가 잘못됐다.
댓글 0개 ▲
[본인삭제]MGS
2014-07-27 19:21:16추천 0
댓글 0개 ▲
MGS
2014-07-27 19:25:16추천 0
아, ?가 statement terminator인 경우를 고려 안했네요. 하지만 고려해도 마찬가지입니다.
댓글 0개 ▲
RGB
2014-07-27 22:17:14추천 5
아.. 저보고 멍청이라고 해주세요ㅜㅜ
다시 세어보니까 12바이트네요
func(var--); 류의 답은 모두 정답입니다
댓글 0개 ▲
2014-07-27 23:17:41추천 4
1 이사람이?? 내 2시간 물어내
댓글 0개 ▲
[본인삭제]러브의맛
2014-07-28 01:32:31추천 0
댓글 0개 ▲
[본인삭제]러브의맛
2014-07-28 01:33:45추천 0
댓글 0개 ▲
2014-07-28 15:07:08추천 0
아뉘.. 이 사람이 프로그래머 게시판에서 낚시질을...
댓글 0개 ▲
2014-07-28 17:01:49추천 0
해달라 하시니 해드리겠습니다.

작성자 최소 멍청이

:)
댓글 0개 ▲
2014-07-28 21:27:57추천 0
처음부터 시도조차 하지 않았다. ㅋㅋㅋㅋ ??? ㅠ.ㅠ
댓글 0개 ▲
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호