반응형

11/26

1. 종부세 고지 : 내년에는 세부담 전체가 더 오를 것이다.

- 시가의 95%에 대해 세금을 매길 예정이다.

- 2 주택 이하는 0.1 ~ 0.3%, 3주택자와 조정지역의 2주택자는 0.6 ~ 2.8% 오른다.

- 법인의 경우에는 최고 세율 3%(2주택 이하)와 6%가 일괄적용된다.

- 정부는 다주택자가 매물을 내놓을 것을 기대하고 있다.

- 논란 : 8억 집 2채를 가지고 있는 사람이 20억 한채를 가지고 있는 경우, 세금을 더 많이 낸다. 부부가 집 두채를 다 공동명의로 해놓은 경우에는 4주택자가 된다.

 

2. 글로벌 자금이 국내 주식시장으로 몰리고 있다.

- 코스피 추종 ETF에 큰 돈이 몰리고 있다.

- 올해 10월까지는 외국인의 매도가 계속되었으나, 11월에 돌아섰다.

- 블랙녹이 아시아 시장에 대한 예측을 상향조정한 영향이 있을 것이다.

- 원화강세로 외국인이 투자하기 좋아졌다.

 

3. 손해보험사의 이익 : 코로나로 이동이 적어져 자동차 사고가 크게 줄었다.

- 손해율이 전년대비 4% 이상 떨어졌다. 내년 보험료도 오르지 않을 전망이다.

 

4. 임대리츠

- 공공임대나 분양도 리츠를 통해 자금을 모은다.

- 분양이 확정된 후에 리츠를 모집하기 때문에 수익률이 거의 정해져있다.

- 최근 10월 말의 김포의 리츠의 경우 투자설명서상의 수익률은 세후 연 5.3%로 매우 높다. 투자설명서상 위험도 매우 높지만, 이론상의 위험으로 구조를 보면 위험이 크지 않다.

- 일반 리츠는 공실이 나는 것이 리스크이나, 주택개발리츠의 경우에는 리스크가 거의 없다(배당의 원천이 임대수익이 아니다).

- 공모리츠를 3년간 보유 시 , 9.9%로 분리과세한다. 배당에 대해 9.9%로 주다가, 중간에 팔면 깍아준 세금을 추징한다.

11/30

1. 코로나 이후, 저축율이 높아지고 있다.

- 지난해 6%에서 10% 정도로 높아질 것이 예상된다. 99년 이후 10%였던 적이 없다.

- 가계 소득은 늘고(재난지원금 영향, 2%) 소비(3% 중반)는 크게 줄었다.

- 우리나라 뿐만아니라 미국, 유럽 등에서도 나타나고 있다.

- 비자발적 소비수축(가게가 영업을 안한다) 영향은 2% 정도이고, 나머지는 예비적 저축(미래에 대한 불안)이다.

 

2. 각종 지원금의 규모가 너무 크다는 우려 : 250조 9천억

- 정부는 불가피하다는 입장이다.

- 중소기업, 소상공인, 자영업자에 대한 상환 유예가 더 늘어날 전망이다.

- 출구전략이 없다는 것이 문제이다.

 

3. 골판지 박스 부족

- 2가지 원인 : 환경부의 폐지 수입 신고제(고급 폐지 수입 차질), 대양제지(시장점유율 7%) 공장 화제.

- 원지 - 원단(중간재) - 박스 : 원지 가격은 25% 올랐다. 원단 가격도 25% 올랐다. 박스 가격도 곧 오를 예정이다.

 

4. 수도요금도 누진제가 있다.

- 두집이 계량기를 하나로 같이 쓰면, 요금이 더 많이 나올 수 있다.

- 수도세 세대분리를 신청하면 해준다. 알아서 1/n을 해준다. 계량기를 설치하는 것은 비싸다.

- 전기세도 이렇게 할 수 있다.

 

5. 중국 국영기업 부도

- 중국이 산업구조 개편을 추진하고 있는데, 잘 안되고 있다.

- 국영기업들이 경제 개편을 위해 투자를 해야하는데, 이를 위한 재원마련을 위해 기존의 빚을 청산하고 있는데, 빚을 내는 방식으로 청산하고 있다.

- 기존의 빚은 지주회사로 부터 빌린 돈이다. 2010년대 이후에는 지방정부가 보증을 설 수 없도록 해왔다.

- 국영기업이라 믿고 투자한 펀드들이 피해를 받고 있다.

- 미중 갈등 등으로 민간 자본이 필요한데, 이렇게 신용을 잃는 것이 문제가 될 수 있다. 중국 정부도 이러한 사실을 알면서도 어쩔수 없이 이렇게 할 정도로 급하다고 할 수 있다.

12/1

1. 부부 공동명의 1주택자 종부세 할인혜택

- 종부세는 공동명의로 하면 아내와 남편 각 6억씩 공제된다(12억원 미만은 세금을 안내도 되었고, 12억 넘는 집이 거의 없었다.).

- 현재, 한명이 소유한 경우 9억 공제 + 장기보유 공제 + 고령자 공제이고, 공동명의의 경우 12억 공제 이외의 공제가 없다.

- 지금처럼 각 6억 공제받거나, 한명이 9억+기타 공제를 받을 수 있도록 선택할 수 있도록 해주었다.

- 실질적으로 큰 차이는 없다.

- 부부가 공동명의로 2채를 보유한 경우에,

 

2. 초고소득자 과세표준 구간이 추가되었다. : 10억 초과 45%(과거 5억 초과 42%가 최고였다.)

- 양도소득세 등에도 적용되므로 주의해야한다.

 

3. 신라젠 상장적격성 여부 판단 결과, 개선 기간 1년 부여가 결정되었다.

- 신규 자금을 유추하고 있는데, 쉽지 않다.

- 2016년 기술특례로 코스닥에 상장되었다.

- 거래 정지는 계속된다.

 

4. 최근 보도블럭 교체가 안보이는 이유

- 과거에는 남는 예산을 소진하기 위해 보도블럭을 바꿨다.

- 서울시 등의 지자체는 오해받는게 싫어서 필요한 공사도 12월에는 안한다.

- 2007년에 10년 넘은 보도블럭만 교체할 수 있도록 법을 바꿨다. 필요한 경우에는 위원회를 거쳐 바꿀 수 있다.

- 사실 이왕이면 다른 공사가 없는 겨울에 하는 것이 좋다...

 

5. 정부가 경유 가격을 휘발유 가격과 비슷하게 하는 방안을 검토중이다(세금 인상을 통해서).

- 경유 승용차의 비율을 낮추자는 정책 권고가 있었다.

- 10월 기준 경유차는 999만 대(42%) 이다.

- 경유차의 장점 : 휘발유 차에 비해 토크가 세고, 주행거리가 길다.

- 휘발유차가 이산화탄소 배출량은 더 많다. => 미세먼지를 줄이기 위해 경유차를 줄이면, 수요가 휘발유차로 가서 이산화탄소 배출량이 는다.

- 경유세를 올려서, 친환경차 구입에 대한 지원금으로 사용할 예정이다. 위의 예처럼 경유차 수요가 휘발유차로 옮겨가지 않도록 하기 위한 방안이다.

- 화물차에 대한 영향으로 물류비가 오를 수 있어 계속 지연되어왔다.

- 3년에 걸쳐 점진적으로 인상할 예정이다.

- 경유 가격은 휘발유의 83% 정도로 다른 OECD 국가에 비해 저렴하다.

 

12/2

1. 대한항공 관련 : 법원은 현 경영진(한진칼)의 편을 들어주었다.

- 한진칼과 KCGI 펀드가 경영권 관련 분쟁 중이다.

- KCGI가 본안 소송을 하게 되면, 시간이 굉장히 오래걸려 아니아나 합병 자체가 불가능해질 수 있다.

- 정부는 아시아나 항공이 망하는 것이 걱정인 입장으로, 일단 대한항공에 맡기려는 입장이다.

- 대형 항공사 2곳 중 한곳이 망할 경우, 경기 회복 후 문제가 될 수 있다.

- KCGI는 사모펀드로 여러가지로 신뢰가 떨어진다.

 

2. 뉴욕 선물시장에서 코코아(초콜릿 원료) 가격이 급등하고 있다.

- 코트디부아르와 가나(시장 점유율 합계 약 70%)가 가격에 프리미엄을 붙일 것을 선언했다.

- 초콜릿 생산 업체가 코코아 가격 상승 위험을 헤지하기 위해 선물시장에 뛰어들며 가격이 올랐다.

- 코코아는 대량 생산이 불가능하다.

 

3. 부동산 시장과 건설업체

- 올해 주택 시장의 특징 : 작년까지는 서울 중심의, 고가 건물의 상승이었다면, 올해는 광역시 등으로 옮겨갔다.

- 거래량도 계속 낮아지다 올해 반등했다.

- 내년에는 특히 전세 가격이 화두이다. 내년에는 입주물량이 크게 감소하며 계속 감소할 것이다. 2023년 쯤 다시 입주물량이 늘어날 것이다. 18, 19년에 핀셋규제와 재건축 규제 강화로 분양물량이 준 영향이다.

- 입주물량의 감소는 전세가의 상승을 의미한다.

- 전세가격 상승으로 실수요자가 전세에서 매매로 돌아설 수 있다. 갭투자 역시 증가할 수 있다(무주택자의 갭투자). 따라서 매매가격 역시 상승할 가능성이 높다.

- 무주택자의 매수, 더 좋은 집으로 가고자하는 수요 등이 많다. 다주택자는 취득세율의 인상으로 매우 공격적인 투자자 이외에는 당분간 자제할 것이다.

- 서울의 노후화 주택은 약 55만호이다.

- 정부정책이 인센티브 제공 등을 통해 사업성이 낮은 지역의 재개발을 장려하는 방향으로 변하고 있다. 내년 3월 서울시가 시범지역을 발표할 예정이다.

 

12/3

1. 개인 공매도 허용 가능성 : 증권금융

- 대차(기업의 공매도를 위한 바구니)와 대주(개인을 위한 바구니)

- 증권금융이 증권사 정보 통합을 통한 'K대주 시스템'을 제안했다.

- 증권사에서 대출을 하게되면, 증권금융이 증권사에게 주식을 담보로 받고 돈을 빌려준다. 증권금융은 이 담보 주식을 공매도에 활용한다.

- 현재 6개 증권사만이 대주를 하고 있다. 모든 증권사가 하며, 이 증권사들의 정보를 모으자는 의견이다.

- 기업과 개인을 구분하지 않으면, 신뢰도나 규모 면에서 개인이 상대가 안되기 때문에 시장을 분리해놨다.

 

2. 여당 '신복지 체제' 제안 : 자영업자도 고용보험에 가입시키자는 의견

- 고용보험의 소득보험화

- 결혼 등 목돈이 필요할 때, 기본소득을 주자는 의견이 있다.

- 자영업자의 소득파악이 어렵고, 자영업자는 소득이 본인만의 성과라는 문제가 있다.

 

3. 카드포인트 통합 조회 시스템 : 연말에 카드 포인트를 모아 현금으로 받을 수 있는 서비스가 생긴다.

 

4. 건강보험료 인상

- 건강보험료는 1(전체), 4(직장인), 11(지역가입자)월에 바뀐다.

- 올해 건보료는 작년의 소득과 재산을 기준으로 정해진다.

- 소득은 구간 별로 되어있어, 소득이 조금만 올라도 건보료는 크게 오를 수 있다.

- 소득이 불규칙한 경우에는, 작년의 소득이 특별한 일이었다는 것을 증명해야한다.

 

12/4

1. 주택 시장2030이 적극적으로 뛰어들고 있다.

- 갭투자, 신용대출 등을 활용하여 주택 시장에 뛰어들고 있다.

- 20대는 노후 소형 주택을 사고있다.

- 집 값과 전세값 모두 오를 것이라는 예상이 많다.

- 지방 거주자의 서울/수도권 수요도 많다.

 

2. 구독 상품자동결제

- 일정 기간 무료 서비스 제공 후, 자동 유료 서비스로 전환해왔다(다크 넛지). : 7일 전에 전화나 문자로 안내하도록 바뀔 것이다.

- 해지 버튼이 가입 버튼 옆에 있도록 하고, 해지 시 사용한 만큼만 지불하도록 바뀐다.

 

3. 적십자회비 : 성금 개념으로 세금이 아니다.

- 지로 같이 생겼고, 독촉 지로도 오므로 불만이 많다.

- 대한적십자사가 정부의 지원금이 는다면 2023년까지 지로 모금을 없애겠다고 했다.

 

4. 금주의 이슈

- 구리 가격 상승 : 수요(건설, 인프라, 운송 등)가 증가하고 있다.

    - 전세계 수요의 절반인 중국 경제가 활성화되고있다.

    - 중국은 수출중심 경제를 바꾸기 위해, 내수 진작을 위해 인프라에 투자할 가능성이 높다.

    - 미국도 코로나 극복을 위해 인프라 투자 가능성이 높다.

    - 전기차와 전기차 인프라에도 구리가 많이 쓰인다.

    - 구리 광산의 대부분이 노후화되고 있다. 노천 채굴이 고갈되어 지하 채굴이 시작되어 생산량이 줄고 있다.

    - 구리 가격은 세계 경기에 선행한다. 따라서 경기 회복의 기대감으로 투기적 수요도 늘고 있다.

- 한국 게임의 중국내 허가(판호)가 싸드 보복 이후 4년 만에 발급되었다.

    - 우리나라 이외의 다른 나라 뿐만 아니라 중국업체도 판호 발급량이 줄었었다. 그래도 보복이라는 의견이 많다.

    - 외국 회사 대상의 42건 판호 중 우리나라 업체는 1개이다.

    - 대형 업체들도 판호를 기다리고 있다. 아직은 판호가 풀어졌는지 알 수 없다.

    - 우리나라도 중국 게임을 막기에는 부담이 너무 크다. 중국이 우리나라 게임사를 제재한다는 공식적 의견을 표명한 적도 없다.

반응형
반응형

 

2018 KAKAO BLIND RECRUITMENT 3차 문제입니다.

 

문제 풀이

1. 0부터 차례대로 n진수로 변환합니다.

2. n진수로 변환한 수를 q에 넣어줍니다.

3. q에 들어간 요소의 수가 게임 참가자의 수 m보다 크게되면 answer에 큐의 p번째 요소(튜브의 순서)를 넣어주고 q에서 m개의 요소를 제거하여 줍니다.

4. 1 ~3의 과정을 answer의 길이가 t가 될 때까지 반복해줍니다.

 

* 단계1에서 0부터 계속 n진수로 바꾸는 것을, 0에 계속 1씩 더해가는 방식으로 수정하면 더 빠를 것 같습니다.

Python Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from collections import deque
= "0123456789ABCDEF"
 
def convert(n, base):
    q, r = divmod(n, base)
    if q == 0:
        return T[r]
    else:
        return convert(q, base) + T[r]
 
def solution(n, t, m, p):
    q= deque()
    answer = ''
    
    #말해야할 숫자
    i = 0
    while len(answer) < t:
        c = convert(i,n)
        
        for s in list(c):
            q.append(s)
            
        while len(q) > m:
            answer+= q[p-1]
            for _ in range(m):
                q.popleft()
        i += 1
    return answer
cs

Line 4 : 숫자 n을 base 진수로 변환시켜주는 함수입니다. 재귀식으로 수행됩니다.

결과

 

테스트 20 통과 (2.07ms, 10.1MB)
테스트 21 통과 (8.82ms, 10.2MB)
테스트 22 통과 (4.58ms, 10.2MB)
테스트 23 통과 (12.77ms, 10.2MB)
테스트 24 통과 (20.17ms, 10.2MB)
테스트 25 통과 (15.09ms, 10.2MB)
테스트 26 통과 (5.53ms, 10.3MB)

두번째 풀이

위의 풀이에 *로 써놓은 것을 구현한 코드입니다.

Python Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from collections import deque
 
class Num():
    def __init__(self, base):
        self.num = [0]
        self.T = list("0123456789ABCDEF")
        self.base = base
    def add(self):
        self.addOne(1)
    def addOne(self,depth):
        if depth > len(self.num):
            self.num = [1+ self.num
            return ;
        if self.num[-depth] == self.base-1:
            self.num[-depth] = 0
            self.addOne(depth+1)
        else:
            self.num[-depth] += 1
    def getNum(self):
        return [self.T[x] for x in self.num]
    
def solution(n, t, m, p):
    q= deque()
    answer = ''
    
    #말해야할 숫자
    num = Num(n)
    while len(answer) < t:
        
        for s in num.getNum():
            q.append(s)
            
        while len(q) > m:
            answer+= q[p-1]
            for _ in range(m):
                q.popleft()
        num.add()
    return answer
cs

 

Line 3: Num 클래스는 n진수이며 처음에  num 변수는 [0]로 초기화됩니다.

Line 8 : Num 클래스의 add 메소드는 num 변수에 1을 더하는 메소드로 addNum이라는 메소드를 통해 실행됩니다.

Line 10 : addNum은 depth 자릿수의 숫자에 1을 더하는 것으로, 수가 가득차는 경우(10진수의 경우 9에 1을 더해 10이 되는 경우)에는 depth 자릿수의 숫자는 0으로 하고 depth+1번째 자릿수에 1을 더하게 됩니다.

결과

테스트 20 통과 (2.17ms, 10.3MB)
테스트 21 통과 (8.86ms, 10.4MB)
테스트 22 통과 (4.44ms, 10.2MB)
테스트 23 통과 (11.55ms, 10.2MB)
테스트 24 통과 (14.63ms, 10.3MB)
테스트 25 통과 (11.84ms, 10.3MB)
테스트 26 통과 (6.06ms, 10.3MB)

테스트 24번을 기준으로 앞의 풀이보다 약 5ms 빨라진 것을 볼 수 있습니다.

문제 링크

 

코딩테스트 연습 - [3차] n진수 게임

N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0

programmers.co.kr

 

반응형
반응형

문제 풀이

1. GROUP BY 를 통해 각 이름의 개수를 세어줍니다.

2. 개수가 2개 이상인 이름만 출력합니다.

* 이름이 NULL인 것이 함정입니다.

Oracle Code

1
2
3
4
5
6
7
SELECT X.NAME, X.COUNT
FROM(SELECT NAME, COUNT(*) COUNT
    FROM ANIMAL_INS
    WHERE NAME IS NOT NULL
    GROUP BY NAME) X
WHERE X.COUNT > 1
ORDER BY X.NAME
cs

문제 링크

 

코딩테스트 연습 - 동명 동물 수 찾기

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디

programmers.co.kr

 

반응형
반응형

문제 풀이

1. 요거트가 담긴 바구니의 카트 아이디 중 우유가 담긴 바구니를 찾는다.

Oracle Code

1
2
3
4
5
6
SELECT DISTINCT X.CART_ID
FROM (SELECT CART_ID 
    FROM CART_PRODUCTS
    WHERE NAME = 'Yogurt') X, CART_PRODUCTS Y
WHERE Y.NAME = 'Milk' AND X.CART_ID = Y.CART_ID
ORDER BY X.CART_ID;
cs

Line 2~4 : 요거트가 담긴 바구니의 카트 아이디를 구한다.

Line 5 : 우유가 담긴 바구니의 카트 아이디 중 요거트가 담긴 바구니의 카트 아이디와 같은 것을 찾아 반환한다.

문제링크

 

코딩테스트 연습 - 우유와 요거트가 담긴 장바구니

CART_PRODUCTS 테이블은 장바구니에 담긴 상품 정보를 담은 테이블입니다. CART_PRODUCTS 테이블의 구조는 다음과 같으며, ID, CART_ID, NAME, PRICE는 각각 테이블의 아이디, 장바구니의 아이디, 상품 종류, 가

programmers.co.kr

 

반응형
반응형

11/9

1. 바이든 당선의 국내 영향 예상 : 대한상공회의소의 보고서

- Bond with arise : 미중 대립이 동맹 간의 대립으로 발전할 가능성이 있다. 글로벌 기업이

- Increase with oil price : 친환경 전환에 따른 단기적 유가상승이 예상된다.

- Dollar decline

- Eco friendly growth : 바이든의 대선 공약이다. 다만, 기대감으로 이미 많이 오른 상황이어서 투자할 때는 주의해야 한다.

- North Korea policy change : 이전에는 트럼프와 김정은의 개인 간 합의 느낌이어다면, 앞으로는 시스템적으로 협상이 이루어질 것이다.

 

2. 공정위가 일감 몰아주기로 한화 솔루션에 과징금 부과했다. : 친누나의 회사를 중간에 끼워 마진을 챙겨줬다.

- 두 회사가 법적으로는 분리되어있지만, 가족관계(범 총수일가)로 보면 위법이라는 것이 공정위의 입장이다.

- 한화는 범 총수일가라는 것이 법적으로는 문제없다는 입장이다.

- 한 익스프레스는 독극물 운송이 주 사업으로, 이러한 사업은 아무하고나 거래할 수 없다는 것이 한화의 입장이다.

 

3. 1인 인구 6백만 돌파

- 양적 팽창 : 617만 가구. 전체 가구 중 30%이다.

- 질적 변화 : 전에는 사별, 이별 등이었지만, 지금은 혼자가 편해서 자발적으로 혼자 사는 사람이 많아졌다.

- 연속성 : 결혼 생각이 없는 경우가 많아(여성은 그냥 결혼이 싫고, 남성은 경제적 능력이 부족하다는 통계) 앞으로도 1인 가구일 것이다.

- 자가소유율이 60%이다. 자가가 아닌 경우에는 아파트 구매를 희망한다.

 

4. 컨소시엄 : 여러 회사가 돈을 합쳐 무엇인가를 인수하는 것이다.

- 리스크 분산과 너무 많은 돈이 드는 것이 주된 이유이다.

- 돈만 내는 회사를 Limited partner, 경영을 하는 회사를 General partner라 한다.

 

5. 조 바이든의 영향

- 트럼프의 불복에 따른 불확실성은 빠르게 줄어들고 있다. 금융시장은 호재를 예상하며 움직이고 있다.

- 코로나 19 관련 변화가 가장 클 것이다. 코로나 방역이 최고의 경제 정책이다. 

- 정부 지출이 늘어나기는 하겠지만, 공화당이 상원을 수성하면서 기대만큼은 늘어나지 않을 것이다.

- 트럼프는 세일 오일, 가스 등 기존의 인프라에 대한 투자를 강조해왔지만, 바이든은 친환경 인프라에 대한 정부지출을 늘릴 것이다. 따라서 단기적으로는 공급량 문제로 유가가 올라갈 가능성이 있다.

- 중국과의 대립 강도와 방향 : 민주당과 바이든도 중국과 화해하고 보호무역주의를 없애지는 않을 것이다. 중국 견제에 대해서는 국가적 공감대가 형성되어있다. 다만 바이든은 관료와 전문가를 활용하여 체계적으로 협상을 진행할 것이다.

11/10

1. 전세자금대출 100조 원 돌파 : 5대 은행 10월 말 기준, 전월 대비 2조 6천억 증가로 100조 원을 돌파했다.

- 전셋값 상승이 원인이다. 3달전에 비해 전세값 평균이 7.5% 올랐다.

- 위험관리 차원에서 5대 은행도 전세자금대출 조절에 들어가기 시작했다.

 

2. 전셋값 관련 정부 대책 : 이번 주 중반 대책 발표가 예상되었으나 알 수 없게 되었다.

- LH를 통한 공공주택 공급 확대 등이 예상되었다.

- 민간 임대주택 공급이 필요한데, 정부의 다주택자 규제와 상충된다.

 

3. 삼성이 미국에서 애플을 제치고 미국 스마트폰 시장 점유율 1위를 달성했다.

- 코로나 19로 아이폰 신제품 출시 일정이 변하였다.

- 중국시장에서는 화웨이가 1등이다. 중국의 애국 소비가 계속되고 있다.

- 개별 모델로 보면 애플이 1위이다.

 

4. 월트 디즈니를 콘텐츠 제국으로 만든 인사를 넥슨이 영입했다.

 

5. 3D 아바타를 통한 소통 플랫폼인 네이버Z에 엔터테인먼트 회사의 투자가 몰리고 있다.

 

6. 개인파산 시 은행은 돈을 어떻게 받나

- 은행은 못 받는다. 이를 채권 상각이라 한다.

 

7. 환율 하락 : 미 대선 이후 계속해서 떨어지고 있다.

- 올초 1150원 대였으나, 코로나로 1300원까지 올랐다가, 지금은 1100원대 초반이다.

- 달러화 약세 : 

- 원화 강세 : 위안화의 강세가 원인이다. 한, 중 모두 코로나의 피해가 심하지 않았다.

- 우리나라와 중국의 경제가 상대적으로 좋다 보니 달러화의 가치가 떨어졌다.

- 코로나로 환율이 불안정했으므로 예측하기 쉽지 않았다.

- 내년까지는 달러화 약세가 이어질 것으로 예상된다. 특히, 내년 상반기까지는 조금 더 내려갈 것으로 전망된다.

- 1000원 밑으로 내려간다면 수출기업들이 큰 피해를 입을 것이므로, 정부가 개입할 가능성도 있다.

- 미국 민주당은 자유무역을 옹호하므로 달러 강세를 용인하는 경향이 있다.

11/11

1. GS리테일, GS홈쇼핑의 합병 : GS 그룹은 온, 오프라인 사업 통합을 통한 시너지 효과를 기대하고 있다.

- GS리테일의 호텔 사업 부문의 적자를 메우기 위한 수단이라는 시각도 있다.

 

2. 유통업계의 온, 오프라인 통합이 큰 효과를 못 보고 있다. : 대표적으로 롯데그룹의 롯데온은 존재감 자체가 시장에 없다.

- 운영상의 문제와 온라인 상의 인기도 등이 없다.

- 오프라인의 온라인 전환이 예상보다 쉽지 않다.

 

3. 전세계약에 대한 세율에 대한 변화 요구가 늘어났다.

- 전셋값이 올라 대부분의 아파트는 최고세율이 적용된다.

- 사실 거래에 따른 수수료인데, 거래금액에 따라 세율이 올라간다는 것은 이상하다. 증권거래세의 경우, 거래금액이 오른다고 세율이 올라가지는 않는다.

 

4. 백신 관련 논란

- 90% : 백신을 맞으면, 코로나 19에 감염되지 않을 확률이 90%가 될 수 있다는 뜻인데, 잘못 받아들여지고 있다.

- 백신이 나온다면 누구부터 맞을까? : 학계에서는 의료진이 1순위, 고위험군(임산부, 80세 이상의 기저질환 보유자 등)이 2순위, 50대 이하의 기저질환이 없는 사람이 후순위로 알려져있다.

11/12

1. 중소기업이 회사를 나누는 사례 : 공정을 나눠서 30~40명 규모로 회사를 잘게 자르는 사례가 늘어나고있다.

- 현재는 계도기간으로 52시간제가 300명 이상인 회사에 적용되며, 내년부터는(2달 남았다) 50명 이상의 모든 회사에 적용되므로 회사를 50명 이하의 규모로 나누고 있다.

- 중소기업은 준비가 안되어있고, 정부도 시행을 더 늦추기에 무리가 있다.

- 대기업은 2018년에 도입되었다.

- 중소기업의 경우에는 노동집약적 일자리가 많고, 대기업과의 거래에서 납기일을 맞춰야하는 경우가 많다.

- 코로나19로 기업의 경제상황은 더 안좋아진 상황이다.

 

2. 옵티머스 펀드 : 회계법인의 실사 결과, 펀드 자체가 아니라 돈만 빼가는 형태였다.

- 투자자산이 5100억 중 회수율이 10%가 안된다.

- 옵티머스 자산운용이 직접 운용한 금액은 35억 밖에 안되며, 나머지는 옵티머스 임원의 친인척 소유 회사에 위탁되었는데 연락이 안된다.

- 1400억 정도가 아예 사라졌다.

- 사모펀드의 경우, 투자자 책임 원칙이 중요하여 신경써야한다.

 

3. 지난달 취업자수 전년 대비 40만명 정도 감소했다.

- 금융시장은 오르고, 환율은 내리고 있다.

 

4. 퇴직금

- 주 15시간 이상 근무, 7개월 이상 근속 시 받을 수 있다(법정 퇴직금). 희망 퇴직시 받는 돈은 법정 외 퇴직금으로, 이것은 회사가 알아서 정한다.

- DB형은 퇴직 직전 3개월 월급을 기준으로 받는다. DC형은 1년차의 1년치 월급, 2년차의 1년치 월급, ... 이 쌓인다.

- DC형은 중도인출이 가능하다(주택마련, 가족이 아플 때 등).

- IRP : 퇴직금을 받기 위해 필요하다.

- IRP나 연금저축 계좌에 받는 경우에는 세금을 떼지 않고 받은 후, 인출 시 세금을 뗀다(퇴직소득을 할부로 내는 개념). 현금으로 받는 경우에는, 세금을 떼고 받는다.

- IRP는 목돈이 필요한 경우 전액을 깨야하지만, 연금저축계좌는 일부만 해지가 가능하다.

- 퇴직소득세는 다른 세금과 아예 분리되어있다. 하지만 공제되는 부분이 많다. 1억을 받는 경우, 20년 근속 기준 230만원, 30년 근속의 경우에는 절반으로 떨어진다.

- 급여가 평이하게 올리간다면 DC 형이 유리하다.

반응형
반응형

2020 KAKAO BLIND RECRUITMENT 문제

위의 카카오 공식 해설을 참조하시면 좋을 것 같습니다.

 

문제 풀이

1. 압축하는 글자 수는 1개부터 글자수의 절반까지만 하면 됩니다.

2. 압축 글자 수를 num이라 할 때, 첫 문자열의 위치를 i, 다음 문자열의 위치를 j라 하면 s[i:i+num]와 s[j:j+num]을 비교하며 같으면 j를 j+num으로 고쳐주며 같은 단어의 수를 세어줍니다.

3. 다른 경우에는 정답 문자열에 같은 단어의 숫자 + s[i:i+num]을 더해줍니다.

4. 위의 과정을 반복한 후, 남은 문자열을 더해줍니다. (xxxxi를 압축하는 경우, 위의 과정을 반복하면 2xx가 되고, 남는 i를 더해 2xxi를 완성합니다.)

Python Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
def solution(s):
    answer = len(s)
    for i in range(1,len(s)//2+1):
        tmp = compress(i,s)
        answer = min(answer,tmp)
    return answer
 
 
def compress(num,s):
    ans = ''
    i = 0
    j = num
    cnt = 1
    while i<len(s):
        if s[i:i+num] == s[j:j+num]:
            cnt += 1
            j += num
            if j + num > len(s):
                ans = ans + str(cnt) + s[i:i+num] if cnt != 1 else ans + s[i:i+num]
                ans += s[j:]
                break
        else:
            ans = ans + str(cnt) + s[i:i+num] if cnt != 1 else ans + s[i:i+num]
            i = j
            j += num
            cnt=1
            
    return len(ans)
cs

Line 3 : 압축은 1개부터 문자열의 절반까지만 수행합니다.

Line 11 : i는 기준 문자열의 시작점입니다.

Line 12 : j는 비교할 문자열의 시작점입니다. 처음에는 s[0:num]과 s[num:num+num]을 비교하게 됩니다.

Line 13 : cnt는 기준 문자열이 반복되는 횟수입니다. 반복되는 문자열이 없는 경우에는 1이 됩니다.

Line 14 : 기준 문자열의 시작점이 문자열보다 커지면 중단합니다.

Line 15 : 기준 문자열이 반복되면 cnt에 1을 더해주고, j에 num을 더해 다음 문자열을 기준 문자열과 비교합니다.

Line 19 : cnt가 1인 경우에는 쓰지 않습니다.

Line 20 : 위의 과정4인 남는 문자열을 씁니다.

 

문제 링크

 

코딩테스트 연습 - 문자열 압축

데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자

programmers.co.kr

 

반응형
반응형

이론은 다루지 않으며, keras를 활용하여 매우 간단한 모델을 만들어 보았습니다.

밑에 언급하듯, 더 좋은 모델을 만들기 위한 기법들을 전혀 고려하지 않은 매우 간단한 모형입니다.

튜토리얼 수준의 예제가 없어서 제가 만들어 보았습니다.

개요

종현의 '가을이긴 한가 봐' 한 곡만을 학습시킨 후, 맨 앞 한 소절만 주고 곡을 만들도록 했습니다.

 

전처리

데이터는 KoNLPy의 kkma를 활용하여 토크나이징한 후, 원 핫 인코딩하여 사용하였습니다. 저는 단 한 곡만을 학습시켰으므로 단어가 총 99개밖에 되지 않습니다. 더 좋은 모델을 만들기 위해서는 등장하는 단어가 아주 많아서 차원이 매우 커지는 문제와 동음이의어의 처리 문제 등에 대해 고민하셔야 합니다.

*Word Embedding, Word2vec 등을 공부하시면 좋을 것 같습니다.

1
2
3
4
5
6
7
8
9
10
11
12
kkma = Kkma()
= open('lyrics.txt''r')
lyrics = f.read()
tokens = kkma.pos(lyrics)
word2idx = {}
idx2word = {}
for i,v in enumerate(set([x[0for x in kkma.pos(lyrics)])):
    word2idx[v]=i
    idx2word[i]=v
bow = [word2idx[token] for token,_ in tokens]
 
seq = np.array([one_hot_encoding(x) for x in bow])
cs

 

word2idx는 단어를 숫자로, idx2word는 숫자를 다시 단어로 변환시켜주기 위한 딕셔너리입니다.

1
2
3
4
5
6
7
x_train = []
y_train = []
window_size = 4
for i in range(window_size,len(seq)):
    x_train.append(seq[i-4:i])
    y_train.append(seq[i])
x_train, y_train = np.array(x_train), np.array(y_train)
cs

window_size는 다음 단어를 예측하기 위해 앞의 몇 단어를 고려할 것 인지를 의미합니다. 저의 경우는 4로 했으므로 

['괜히', '설레', 'ㄴ', '것', '을', '보', '니']의 경우 '을'을 예측하기 위해 ['괜히', '설레', 'ㄴ', '것']을 사용합니다.

모델

1
2
3
4
5
6
7
model = Sequential()
model.add(LSTM(128, input_shape = (window_size, seq.shape[1])))
model.add(Dense(seq.shape[1], activation='softmax'))
 
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
 
model.fit(x_train, y_train, epochs=30, batch_size=4, verbose=2)
cs

LSTM 한층과 Fully connected layer 한층으로 구성된 매우 간단한 모형입니다.

결과

1
2
3
4
5
6
7
8
9
10
11
12
ini = '가을이긴 한가 봐'
ini = [one_hot_encoding(word2idx[x]) for x,_ in kkma.pos(ini)]
out = []
 
= len(ini)
while i < 200:
    tmp_in = np.array(ini[i-4:i]).reshape((-1,4,99))
    tmp_pred = model.predict(tmp_in)
    pred_idx= np.argmax(tmp_pred)
    ini.append(one_hot_encoding(pred_idx))
    out.append(idx2word[pred_idx])
    i += 1
cs

노래의 첫 소절인 '가을이긴 한가 봐'를 시작으로 200 단어를 예측합니다.

결과는 다음과 같습니다.


가을이긴 한가

괜히 설렌 것을 보니

벌서 가을이 한창 물들었나봐

마음속 깊이 들어왔나 봐

 

잘 사냐는 네 인사에

쉽게 무너진 것을 보니

벌써 가을이 한창 물들었나 봐

 

마음속 깊이 들어왔나 봐

잘 사냐는 네 인사에 쉽게 무너진 걸 보니

벌서 가을이 한창 물들어나 봐

마음속 깊이 들어왔나 봐

 

잘 사냐는 네 인사에

쉽게 무너진 것을 보니

벌써 가을이 한창 물들었나 봐

마음속 깊이 들어왔나 봐


보시다시피 한곡만을 예측하다 보니 가사를 거의 동일하게 생성합니다. 다만 후렴에 빠져서 후렴이 계속 반복되는 것을 볼 수 있습니다. 이러한 문제를 해결하기 위해서는 노이즈를 추가하거나 하는 방식이 필요할 것 같습니다.

 

Source Code

 

SunggookCHOI/Laboratory

개인 학습의 기록. Contribute to SunggookCHOI/Laboratory development by creating an account on GitHub.

github.com

 

반응형
반응형

문제 풀이

1. dictionary 자료구조를 활용하여 각 나무의 등장 횟수를 세어줍니다.

2. 이 때, defaultdict를 사용하면, 해당 나무가 이미 등장한 적이 있는지 검사하는 코드를 작성할 필요가 없습니다.

3. format 함수를 이용하여 각 나무의 점유율을 소수점 넷째 자리까지 출력합니다.

 

Python Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import sys
from collections import defaultdict
 
readline = sys.stdin.readline
 
def main():
    dic = defaultdict(int)
    tot = 0
    try:
        while 1:
            word = readline().rstrip()
            if not word:
                break
            dic[word] += 1
            tot += 1
    except EOFError:
        exit()
 
    for t in sorted(dic.keys()):
        print(t,format(dic[t]/tot*100,'.4f'))
if __name__=='__main__':
    main()
cs

 

 

문제링크

 

4358번: 생태학

프로그램은 여러 줄로 이루어져 있으며, 한 줄에 하나의 나무 종 이름이 주어진다. 어떤 종 이름도 30글자를 넘지 않으며, 입력에는 최대 10,000개의 종이 주어지고 최대 1,000,000그루의 나무가 주어

www.acmicpc.net

 

반응형

'알고리즘 > 백준' 카테고리의 다른 글

백준 20299 3대 측정  (0) 2020.12.04
백준 11057 오르막 수 Python  (0) 2020.12.03
백준 1520 내리막 길  (0) 2020.10.20
백준 1152 단어의 개수  (0) 2020.08.31
백준 2884 알람 시계  (0) 2020.05.08

+ Recent posts