[PYTHON]첫도전_ 넥슨 입사문제 Programming

넥슨 입사 문제

Python으로 함 해봤는데 ...
조잡하고...
작성하는데 시간걸려서 우울했다.

일단 1번문제만...

    def gen(a):
      sum=a
      get=a
      while get:
        sum+=get%10
        get/=10
    return sum

    def self_sum(a,b):
      min=a
      max=b
      sum=(max*(max+1))/2
      for i in range(min, max+1):     
        c=gen(i)      
        if c<=max:
            sum-=c
    return sum

헌데 생각해 보니...틀린듯.
중복해서 값이 빠져나가니..원....가볍게 시간날때마다 함해봐야할듯..

덧셈을 못해서...한참동안 max*(max-1)/2 를 갖고 계산했다 OTL
---------------------------------------------------------recal
1. main
>>> def self_num(max):
    sum = ((max+1)*max)/2
    slist = []
    for i in range(1, max+1 ):
        snum = gen(i)
        if snum > max:
            continue
        if snum not in slist:
            slist.append(snum)
            sum -= snum
    return sum

2. sub
>>> def gen(d):
    get = d
    sum = d
    while(get):
        sum+=(get%10)
        get/=10
    return sum

해결한듯..어쨌든...작지만...정말..대단히..ㅡㅡ;;;
뭐...처음 혼자서 스스로 시도해본것.성공한듯. 자축자축~~ OTL

트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://uamyd.egloos.com/tb/801807 [도움말]