Coin 1 !!

문제 이해가 늦었다.. ㅜ
Coin 문제이다/


(Coin1)


아래는 문제 화면이다.



(문제화면)



문제에 접속하면 게임이 나온다.


(게임 화면)



아마 이 문제를 이해못했던건 나만... 일수도 있지만..
혹시나 못하신 분들을 위해 저의 시선으로 설명!

1. 가짜 코인을 찾는게 목표!
2. N -> 코인의 개수, C -> 무게를 잴수 있는 기회
3. C가 기회라고는 하지만 C번 무게를 잰 후에 답을 말해야한다.
4. N 이 주어지면 그에 해당하는 인덱스를 지정해주면 그 코인들의 무게를 재서 알려준다.
예를들어
N =6 이다 하면.
0, 1, 2, 3, 4, 5    이렇게 동전이 있는 것이다.

내가 0번 3번 5번 코인을 선택해서 0 3 5   이렇게 입력해서 보내면
0 3 5  코인의 무게를 합해서 알려준다. 요론식으로 해서 가짜 코인을 찾는 것!

아래는 나의 파이썬 코드이다.
나의 생각 그대로 코드로 옮겨두었기에 정리가 산만하다.



(해결 코드)




(해결 코드)



100개의 코인을 모으는 것은 순식간이다.
문제 해결!


(문제 해결)

'WarGame > 500 Project' 카테고리의 다른 글

(54/500) pwnable.kr - cmd1  (0) 2017.07.12
(53/500) pwnable.kr - blackjack  (0) 2017.07.12
(51/500) pwnable.kr - shellshock  (0) 2017.07.11
(50/500) pwnable.kr - mistake  (0) 2017.07.10
(49/500) pwnable.kr - leg  (0) 2017.07.10





오늘은 코딩을 해보았다.
Training 문제로 간단한 문제를 풀었다.


(Prime Factory 문제)



문제는 이렇다.
100만 이상의 숫자의 소수를 구한다.
그 소수의 합 또한 소수인 수를 구한다.

이런 소수를 2개 구한다.
그리고 이어주면된다.

예를 들어
1234567 과 2345678 을 구했다 치면
12345672345678을 답으로 적으면 된다.

이 문제를 풀기위해 소수의 합의 소수를 구해야해서
중복되는 코드가 있으므로 함수를 만들어서 사용했다.

첫번째로 만든 함수는 소수인지 판별하는 것이다.



(소수 판별 함수)



소수 판별 함수는
flag 변수를 두어서
만약 나누어지는 값이 발견되면 flag를 1로 주어 return하고
없다면 그대로 0으로 나간다.
즉 밖에서 보면 0이 나오면 소수이고 1이 나오면 소수가 아니다.


두번째로 구한 소수의 자릿수를 전부 더해주는 함수이다.



(자릿수 더하기 함수)



이 함수의 설명은 코드 보는 것과 같다.
각 자리수의 10의 거듭제곱으로 나누어 각 수를 더해서
return 한다.

이 두가지 함수를 이용해서
계산한다.

처음 시작은 100만으로 시작해서 하나씩 증가시키면서 검사한다.



(완성 코드)



두가지 변수에 가득 차면 반복문이 종료된다.



(실행 결과)



실행 결과를 복사 해서
정답에 넣으면!



(정답)



정답이 된다. :)

간단한 문제지만
30? 40분은 걸렸던거 같다..!

오랜만에 해서 그런가 보다
자주 해야겠다 :)



'WarGame > WeChall' 카테고리의 다른 글

WeChall - (Coding) Training: Programing 1  (0) 2017.01.26

+ Recent posts