2021년 08월 11일 수요일 IT뉴스

1. [스타트업] 쿠팡 상장후 韓 스타트업에 해외투자자 러브콜 쏟아져

[스타트업] 쿠팡 상장후 韓 스타트업에 해외투자자 러브콜 쏟아져

“쿠팡과 마켓컬리 효과로 한국 스타트업에 해외 자본의 투자가 쏟아질 겁니다.” 박 대표는 “쿠팡 상장 이후 해외투자자들이 한국 스타트업에 대해 계속 문의해 오고 있다”면서 “한국은 시장이 작고 엑시트(투자 회수)가 어렵다는 의심이 이제 통하지 않는다”고 설명했다.

박 대표는 “이미 한국에 유니콘이 될 수 있는 기업이 많은데도 외국인 투자가 들어오지 못한 것은 실리콘밸리 식 글로벌 스탠더드를 맞추기 못했기 때문”이라면서 “중국·이스라엘이 이런 기준을 맞췄기 때문에 이곳의 스타트업들이 많은 투자를 받을 수 있었다”고 설명했다. 쿠팡과 마켓컬리가 해외 투자를 받을 수 있었던 것도 이런 전 세계 VC 세계의 규칙에 맞게 지배구조와 계약서 등을 만들었기 때문이라는 것이다.


2. 온라인 가격 비교 플랫폼 ‘다나와’도 매각 착수

온라인 가격 비교 플랫폼 ‘다나와’도 매각 착수

다나와는 2000년 2월 카메라 가격 비교 사이트로 시작한 플랫폼이으로 컴퓨터, 정보 기기와 관련해 데이터베이스(DB)를 보유하고 있으며 현재는 모든 카테고리를 망라하는 종합 가격 비교 사이트로 성장했다.

다나와는 2011년 1월 코스닥 시장에 상장했다. 지난해 매출(연결 기준)은 2320억원, 영업이익 378억원을 냈고, 다나와 측은 “최대 주주가 보유하고 있는 지분 매각을 포함해 다양한 전략적인 방안을 검토 중”이라며 “이와 관련해 NH투자증권을 자문사로 선정한 후 필요한 사전 절차를 진행하고 있지만 현재까지 구체적으로 결정되거나 확정된 사항은 없다”고 했다.


3. 예스24, 모바일앱서 선물하기 서비스 시작

예스24, 모바일앱서 선물하기 서비스 시작

예스24 모바일 앱(APP)에서 상품을 선택하고 ‘선물하기’를 통해 결제하면 상대방 카카오톡 또는 문자로 메시지 카드가 발송되며, 선물을 받은 사람은 휴대전화로 전송된 메시지 내 ‘선물 받기’ 링크를 통해 메시지 카드 확인 및 선물 수령이 가능하다.

최세라 예스24 도서사업본부 상무는 “장기화된 코로나19로 인해 직접 만나 안부를 전하거나 감사, 축하 등 마음을 전하기 어려운 요즘, 언택트 소비 트렌드를 반영해 예스24 모바일 ‘선물하기’ 서비스를 선보이게 됐다”며, “소중한 사람들과의 교류가 어려운 상황인 만큼 조금이라도 따스한 마음을 전하는 데 도움이 되길 바란다”고 말했다.


4. 서울시 25개 전통시장, 당근마켓에서 만난다

서울시 25개 전통시장, 당근마켓에서 만난다

국내 대표 지역생활 커뮤니티 당근마켓이 서울시 전통시장 활성화를 위해 서울신용보증재단과 손을 잡았으며, 이번 협약의 핵심은 당근마켓을 통해 서울시 내 25개 전통 시장의 500여 개 상점을 각 시장 인근에 거주하는 주민들과 연결해, 전통시장의 온라인 진출과 경쟁력 강화를 도모하는 것이다.

그 첫 시작으로 당근마켓은 9월 중 현재 서울 시내 약 150곳에 운영 중인 당근마켓 내 근처 ‘동네 장보기’ 테마관을 서울 전 지역으로 확대하고, 전통시장 상인들의 비즈프로필을 연결해 전통시장 상품과 소식을 제공할 계획이다. 전화문의는 물론 채팅, 댓글을 통해 고객들과 친밀감을 쌓으며 단골을 확보할 수 있어, 매출 견인에 실질적인 도움이 될 것으로 기대를 모으고 있다.


5. 자동차 업계, 금융업에 ‘러브콜’…핵심은 데이터

자동차 업계, 금융업에 ‘러브콜’…핵심은 데이터

기아는 핀테크 ‘뱅크샐러드’에 100억원을 투자하겠다는 방침을 발표했으며 구체적인 계획은 밝히지 않았지만 핵심은 ‘데이터’로 기아와 뱅크샐러드는 차량에서 얻는 데이터와 차량 안에서 고객이 쓰는 자산관리 데이터를 잇는 오픈 플랫폼 구축하고, 모빌리티 산업을 위한 광범위한 데이터 기술 협력을 꾀한다는 계획이다.

기아 관계자는 “자동차 제조업체가 단순히 자동차만 만드는 것에서 미래 모빌리티 등 다양한 탈 것들에 대해 관심을 갖고 있다”며 “고객 취향을 알 수 있는 데이터를 얻기 위해 이번 투자를 단행했으며, 캐롯손해보험처럼 자동차와 금융이 관련된 부분을 고려하고 있다”고 설명했다.

금융이 자동차를 구매하는 시점 혹은 빌리는 시점부터 폐차를 하는 순간까지 밀접하게 연관된 업종으로 금융과 자동차산업 간 시너지를 낼 수 있는 강력한 무기는 데이터이다. 고객에게 신차를 추천할 경우 이들의 예산은 얼마인지 혹은 얼마나 과거 차를 운행해왔는지 등을 파악한다면 성공으로 이어질 가능성도 높아진다.

[백준] 15904번 UCPC는 무엇의 약자일까?

[백준] 15904번 UCPC는 무엇의 약자일까?

출처: [백준] 15904번 UCPC는 무엇의 약자일까?


시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 (추가 시간 없음) 512 MB 5119 2068 1745 41.776%

문제

UCPC는 ‘전국 대학생 프로그래밍 대회 동아리 연합 여름 대회’의 줄임말로 알려져있다. 하지만 이 줄임말이 정확히 어떻게 구성되었는지는 아무도 모른다. UCPC 2018을 준비하던 ntopia는 여러 사람들에게 UCPC가 정확히 무엇의 줄임말인지 물어보았지만, 아무도 정확한 답을 제시해주지 못했다. ntopia가 들은 몇 가지 답을 아래에 적어보았다.

  • Union of Computer Programming Contest club contest
  • Union of Computer Programming contest Club contest
  • Union of Computer Programming contest club Contest
  • Union of Collegiate Programming Contest club contest
  • Union of Collegiate Programming contest Club contest
  • Union of Collegiate Programming contest club Contest
  • University Computer Programming Contest
  • University Computer Programming Club contest
  • University Computer Programming club Contest
  • University Collegiate Programming Contest
  • University CPC

ntopia는 이렇게 다양한 답을 듣고는 UCPC가 무엇의 약자인지는 아무도 모른다고 결론내렸다. 적당히 슥삭해서 UCPC를 남길 수 있으면 모두 UCPC의 약자인 것이다!

문자열이 주어지면 이 문자열을 적절히 축약해서 “UCPC”로 만들 수 있는지 확인하는 프로그램을 만들어보자.

축약이라는 것은 문자열에서 임의의 문자들을 제거하는 행동을 뜻한다. 예를 들면, “apple”에서 a와 e를 지워 “ppl”로 만들 수 있고, “University Computer Programming Contest”에서 공백과 소문자를 모두 지워 “UCPC”로 만들 수 있다.

문자열을 비교할 때는 대소문자를 구분해 정확히 비교한다. 예를 들어 “UCPC”와 “UCpC”는 다른 문자열이다. 따라서 “University Computer programming Contest”를 “UCPC”로 축약할 수 있는 방법은 없다.

그나저나 UCPC는 정말 무엇의 약자였을까? 정확히 아시는 분은 제보 부탁드립니다.


입력

첫 번째 줄에 알파벳 대소문자, 공백으로 구성된 문자열이 주어진다. 문자열의 길이는 최대 1,000자이다. 문자열의 맨 앞과 맨 끝에 공백이 있는 경우는 없고, 공백이 연속해서 2번 이상 주어지는 경우도 없다.


출력

첫 번째 줄에 입력으로 주어진 문자열을 적절히 축약해 “UCPC”로 만들 수 있으면 “I love UCPC“를 출력하고, 만들 수 없으면 “I hate UCPC“를 출력한다.


예제 입력 1

1
Union of Computer Programming Contest club contest

예제 출력 1

1
I love UCPC

예제 입력 2

1
University Computer Programming

예제 출력 2

1
I hate UCPC

출처


알고리즘 분류


소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import sys

input = sys.stdin.readline

string = input().rstrip()

check_alpha = ['U', 'C', 'P', 'C']

flag = True
for alpha in check_alpha:
if alpha in string:
string = string[string.index(alpha) + 1:]
else:
flag = False
break

print("I love UCPC") if flag else print("I hate UCPC")

[백준] 1543번 문서 검색

[백준] 1543번 문서 검색

출처: [백준] 1543번 문서 검색


시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 10226 3896 3092 37.671%

문제

세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한다. 예를 들어, 문서가 abababa이고, 그리고 찾으려는 단어가 ababa라면, 세준이의 이 함수는 이 단어를 0번부터 찾을 수 있고, 2번부터도 찾을 수 있다. 그러나 동시에 셀 수는 없다.

세준이는 문서와 검색하려는 단어가 주어졌을 때, 그 단어가 최대 몇 번 중복되지 않게 등장하는지 구하는 프로그램을 작성하시오.


입력

첫 번째 줄에 알파벳 대소문자, 공백으로 구성된 문자열이 주어진다. 문자열의 길이는 최대 1,000자이다. 문자열첫째 줄에 문서가 주어진다. 문서의 길이는 최대 2500이다. 둘째 줄에 검색하고 싶은 단어가 주어진다. 이 길이는 최대 50이다. 문서와 단어는 알파벳 소문자와 공백으로 이루어져 있다.


출력

첫째 줄에 중복되지 않게 최대 몇 번 등장하는지 출력한다.


예제 입력 1

1
2
ababababa
aba

예제 출력 1

1
2

예제 입력 2

1
2
a a a a a
a a

예제 출력 2

1
2

출처


알고리즘 분류


소스코드1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import sys
from collections import Counter

input = sys.stdin.readline

doc = input().rstrip()
word = input().rstrip()
doc = doc.replace(word, "?")

temp = dict(Counter(list(doc)))
if '?' in temp:
print(temp['?'])
else:
print(0)

소스코드2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import sys

input = sys.stdin.readline

doc = input().rstrip()
word = input().rstrip()

count = 0
idx = 0

while idx <= len(doc) - len(word):
if doc[idx:idx + len(word)] == word:
count += 1
idx += len(word)
else:
idx += 1
print(count)

2021년 08월 09일 월요일 IT뉴스

1. [단독] 네이버, 카페24 최대주주 된다…지분 20% 인수 계약

[단독] 네이버, 카페24 최대주주 된다…지분 20% 인수 계약

  • 1999년 설립된 카페24는 쇼핑몰 개설, 광고·마케팅, 결제, 물류 등 다양한 서비스를 제공하며, 개인과 법인 등 고객 190만 명을 보유하고 있다. 솔루션업계 경쟁사인 네이버, 쿠팡, NHN 등을 모두 넘어서는 국내 최대 규모다.

네이버는 2014년부터 카페24의 경쟁 플랫폼이라고 할 수 있는 스마트스토어를 운영해왔고 두 플랫폼이 협력하게 되면 상호 고객 데이터를 교환해 서비스 고도화를 노릴 수 있을것이며, 카페24의 이용 고객을 스마트스토어에 그대로 연동해 더 많은 판매자를 확보할 수도 있다. 카페24 이용자는 190만 명이고, 스마트스토어는 45만 명이다.

네이버가 카페24가 절실했던 가장 큰 이유는 글로벌 진출로 일본에선 라인, 야후 등 네이버 계열사의 쇼핑 플랫폼에서 전자상거래를 시작할 계획이고, 스페인에선 올해 초 약 1500억원을 투자한 왈라팝을 전자상거래 플랫폼으로 확대할 방침이다.


2. 무료로 이용자 모으더니…카카오, 플랫폼 ‘유료 본색’ 드러냈다

무료로 이용자 모으더니…카카오, 플랫폼 ‘유료 본색’ 드러냈다

카카오모빌리티가 택시 스마트호출료에 이어 전기자전거 요금 인상을 추진한다. 카카오측은 전기자전거 요금제 변경이 단거리 고객 수요에 맞춘 결정이라는 입장이지만, 일각에선 카카오가 플랫폼 장악력을 악용해 도미노식 가격 올리기에 나섰다는 비판을 제기한다.

카카오모빌리티가 기업공개(IPO)를 앞두고 무리하게 수익화에 나선 것으로 보는 시각도 있으며, 명확한 수익모델을 증명하고자 일정을 서두르고 있다는 것. 업계 관계자는 “택시, 전기자전거 외에 다른 모빌리티 서비스들도 유료화될 가능성이 크다”고 말했다.


3. 인공지능 장착 ‘의식주 스타트업’ 급증

인공지능 장착 ‘의식주 스타트업’ 급증

AI가 빠른 속도로 발전하는 가운데, 코로나19 사태가 일상을 ‘언택트’로 바꿔놓고 디지털 기술에 익숙한 MZ세대(밀레니얼·Z세대, 1980~2000년대 초 출생)가 소비 주체로 급부상하면서 이른바 ‘라이프 테크’ 스타트업이 업계 게임체인저로 전면에 나서는 양상이다.

패션은 그동안 주관적인 개인 취향이 중요한 데다 AI가 패션업계 특유의 변화무쌍한 사진·이미지 데이터를 다루는 게 쉽지 않아서 오프라인 힘이 셌기 때문에 AI와 거리가 먼 분야로 꼽혔다. 하지만 AI와 클라우드가 더 많은 데이터를 축적·분석하면서 패션 분야에서는 머리부터 발끝까지 모든 것에 첨단기술이 동원되고 있기 때문에 이를 하나둘씩 극복해내면서 되레 전통 패션회사의 구원투수로 등장할 태세다.


4. NH농협은행 ‘올원뱅크’서 꽃 배달하고 고기 산다

NH농협은행 ‘올원뱅크’서 꽃 배달하고 고기 산다

[사진: NH농협은행]

NH농협은행은 올원뱅크에서 ‘올원플라워’ ‘NH농협은행 실명인증’ ‘농협 LYVLY(라이블리)’ 등 다양한 특화 서비스를 새롭게 선보인다고 8일 밝혔다.

  • 올원플라워는 한국화훼농협의 꽃다발, 화환, 난 등 화훼 상품을 올원뱅크에 등록된 농협계좌와 카드로 간편하게 결제할 수 있는 서비스다.
  • 농협은행 실명인증은 금융위원회 혁신금융서비스로 지정된 ‘마이아이디(MyID)’와 연계해 비대면 실명확인 절차를 간소화한 특화 서비스다.
  • 농협 라이블리는 농협이 직접 만든 PB브랜드로, 상품 기획부터 생산 관리까지 직접 진행하는 축산 전문 온라인 쇼핑몰이다.

5. B2C를 넘어서…쿠팡, B2B 이커머스·배달앱 본격 가동

B2C를 넘어서…쿠팡, B2B 이커머스·배달앱 본격 가동

쿠팡은 최근 쿠팡비즈 회원에 관한 내용을 새로 추가한 개정 이용약관을 공지했으며, 지난 7월 ‘쿠팡비즈’ 등 사업자 전용 서비스와 관련 있어 보이는 상표들을 출원해 놨다. 쿠팡비즈는 개인 사업자 또는 중소 법인을 대상으로 사무용품과 문구류, 간식류 등을 제공하는 서비스일 것으로 예상되고 있다. 구체적인 내용은 아직 베일 속이나 머지않은 시점에 정식 서비스를 가동할 것으로 점쳐진다.

쿠팡은 지난 4월 음식점 식자재를 납품해주는 ‘쿠팡이츠딜’을 일부 지역에서 시범 운영했고 최근 이를 정식 가동했다.

[백준] 1110번 더하기 사이클

[백준] 1110번 더하기 사이클

출처: [백준] 1110번 더하기 사이클


시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 135236 64039 53523 47.801%

문제

0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자.

26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다.

위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다.

N이 주어졌을 때, N의 사이클의 길이를 구하는 프로그램을 작성하시오.


입력

첫째 줄에 N이 주어진다. N은 0보다 크거나 같고, 99보다 작거나 같은 정수이다.


출력

첫째 줄에 N의 사이클 길이를 출력한다.


예제 입력 1

1
26

예제 출력 1

1
4

예제 입력 2

1
55

예제 출력 2

1
3

예제 입력 3

1
1

예제 출력 3

1
60

예제 입력 4

1
0

예제 출력 4

1
1

출처

  • 문제를 번역한 사람: baekjoon
  • 어색한 표현을 찾은 사람: doju
  • 문제의 오타를 찾은 사람: eric00513
  • 데이터를 추가한 사람: jh05013

알고리즘 분류


소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
N = int(input())

new_num = N
result = 0
while True:
ten = new_num // 10
one = new_num % 10
sum_num = ten + one
if sum_num >= 10:
sum_num = sum_num % 10

new_num = one * 10 + sum_num

result += 1
if N == new_num:
break

print(result)

2021년 08월 06일 금요일 IT뉴스

1. 네거티브 규제·자유로운 고용…美 실리콘밸리는 ‘韓과 정반대’

네거티브 규제·자유로운 고용…美 실리콘밸리는 ‘韓과 정반대’

실리콘밸리의 가장 큰 장점은 스타트업 친화적 규제 환경으로 대표적인 게 근로시간이다. 미국 캘리포니아주 노동법은 ‘면제 근로자(exempt employee)’ 제도를 운영하고 있으며 핵심 내용은 주요 부서장과 최저임금의 두 배 이상을 받는 근로자 등 화이트칼라 직장인은 시간 규제를 하지 않는 것이다.

‘떠오르는 스타트업 대국’ 중국은 정부가 스타트업 육성을 주도하고 있다. 2015년부터 추진한 창업생태계 구축전략 ‘대중창업, 만중혁신’이 근간으로 데이터 접근, 세제 혜택, 시험특구 지정, 연구비 지원 등의 규모와 정도가 강력하고 일관되다는 게 특징이다.


2. [LGU+컨콜] 디즈니플러스 한국 출시 임박…“협상 긍정적”

[LGU+컨콜] 디즈니플러스 한국 출시 임박…“협상 긍정적”

디즈니가 국내 인터넷TV(IPTV) 등에 콘텐츠 공급 중단을 본격화하면서 한국시장 진입에 속도를 내는 만큼, 누가 디즈니플러스 카드를 가져갈 수 있을지 이목이 집중되었는데, LG유플러스가 긍정적 협상을 진행하고 있다고 밝혔다.

LG유플러스 안드로이드 IPTV 셋톱박스 비중은 97%에 달한다. 이는 디즈니가 요구하는 고객 편의성 측면에 부합한다는 설명이고, 또, LG유플러스는 넷플릭스‧HBO 등 해외 콘텐츠 기업과 협업한 바 있다.


3. ‘유니콘’ 앞둔 당근마켓, 중고나라와 달랐던 건

‘유니콘’ 앞둔 당근마켓, 중고나라와 달랐던 건

중고거래 플랫폼 ‘당근마켓’이 대규모 투자를 유치했고 이 과정에서 기업가치를 3조원으로 인정받았다. 투자은행(IB) 업계에 따르면 당근마켓은 시리즈D 라운드에서 1800억원을 조달하게 된다.

2003년 국내 처음으로 온라인 중고마켓을 열었던 ‘중고나라’는 지난 3월 한 사모펀드 컨소시엄에 팔리면서 기업가치가 1210억원 남짓으로 드러났다.

투자자들이 당근마켓으로 몰리는 덴 이유로는 “중고나라가 지금까지 해온 전자상거래에 집중한다면, 당근마켓은 지역 커뮤니티를 바탕으로 새로운 가치를 창출하려고 한단 점에서 다르다고 봤다”고 말했다. 예를 들어 급하게 아이를 돌봐줄 사람이 필요할 때 당근마켓의 동네 커뮤니티에서 사람을 찾을 수 있단 것이다.


4. KT엠모바일 알뜰폰, 네이버 인증서 도입…비대면 서비스 강화

KT엠모바일 알뜰폰, 네이버 인증서 도입…비대면 서비스 강화

KT엠모바일이 비대면 개통 서비스 내 네이버 인증서를 도입 고객 편의성을 강화했다 [사진 : KT엠모바일]

KT엠모바일은 소비자 만족도를 높이고 비대면 온라인 개통 서비스 경쟁력을 강화하고자 올해부터 ‘네이버 인증서’ 도입을 추진했다. 이번 서비스는 지난 6월 과학기술정보통신부로부터 정보통신기술(ICT) 규제 샌드박스 ‘비대면 이동통신 가입 서비스에 대한 임시 허가’ 승인을 거쳐 출시됐다.

특히 이번 신규 인증 서비스 적용으로 신용카드 발급이 어려웠던 학생, 군인 등 신규 가입자들의 불편을 해소할 수 있을 전망이다. 기존 신용카드를 소유하고 있지 않은 고객들은 범용 공인인증서를 유료 발급받거나 본인 인증을 위한 ARS 확인을 대기해야 하는 등 복잡한 절차를 거쳐야 했다.

[백준] 2847번 게임을 만든 동준이

[백준] 2847번 게임을 만든 동준이

출처: [백준] 2847번 게임을 만든 동준이


시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 6784 3091 2711 45.794%

문제

학교에서 그래픽스 수업을 들은 동준이는 수업시간에 들은 내용을 바탕으로 스마트폰 게임을 만들었다. 게임에는 총 N개의 레벨이 있고, 각 레벨을 클리어할 때 마다 점수가 주어진다. 플레이어의 점수는 레벨을 클리어하면서 얻은 점수의 합으로, 이 점수를 바탕으로 온라인 순위를 매긴다. 동준이는 레벨을 난이도 순으로 배치했다. 하지만, 실수로 쉬운 레벨이 어려운 레벨보다 점수를 많이 받는 경우를 만들었다.

이 문제를 해결하기 위해 동준이는 특정 레벨의 점수를 감소시키려고 한다. 이렇게해서 각 레벨을 클리어할 때 주는 점수가 증가하게 만들려고 한다.

각 레벨을 클리어할 때 얻는 점수가 주어졌을 때, 몇 번 감소시키면 되는지 구하는 프로그램을 작성하시오. 점수는 항상 양수이어야 하고, 1만큼 감소시키는 것이 1번이다. 항상 답이 존재하는 경우만 주어진다. 정답이 여러 가지인 경우에는 점수를 내리는 것을 최소한으로 하는 방법을 찾아야 한다.


입력

첫째 줄에 레벨의 수 N이 주어진다. (1 ≤ N ≤ 100) 다음 N개 줄에는 각 레벨을 클리어하면 얻는 점수가 첫 번째 레벨부터 마지막 레벨까지 순서대로 주어진다. 점수는 20,000보다 작은 양의 정수이다.


출력

첫째 줄에 점수를 몇 번 감소시키면 되는지 출력한다.


예제 입력 1

1
2
3
4
3
5
5
5

예제 출력 1

1
3

예제 입력 2

1
2
3
4
5
4
5
3
7
5

예제 출력 2

1
6

출처


알고리즘 분류


소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import sys

input = sys.stdin.readline

N = int(input())
levels = [int(input()) for _ in range(N)]

result = 0
max_level = levels[-1]
for i in range(N - 2, -1, -1):
if levels[i] >= max_level:
temp = max_level - 1
result += levels[i] - temp
max_level = levels[i] = temp
else:
max_level = levels[i]

print(result)

[MySQL] 사용자 계정 생성 및 삭제, 권한관리

[MySQL] 사용자 계정 생성 및 삭제, 권한관리

MySQL 접속

1
2
3
sudo mysql 
-------------------
mysql -u root -p

새로운 유저 생성

1
mysql> CREATE USER 'username'@'host' IDENTIFIED WITH authentication_plugin BY 'password';

사용자 계정 삭제

1
mysql> DROP USER 'user명'@'server명';


새로운 데이터베이스 생성

1
2
mysql> CREATE DATABASE test;
mysql> SHOW DATABASES;

특정 계정에 모든 데이터베이스 사용 권한 부여

1
2
mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost';
mysql> FLUSH PRIVILEGES;

특정 계정에 특정 데이터베이스 사용 권한 부여

1
2
mysql> GRANT ALL PRIVILEGES ON 데이터베이스이름.* TO 'username'@'localhost';
mysql> FLUSH PRIVILEGES;

특정 권한 부여

1
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON 'database명'.'tabel명' TO 'user명'@'server명';

모든 권한 삭제

1
mysql> REVOKE ALL ON 'database명'.'table명'FROM 'user명'@'server명';

특정 권한 삭제

1
mysql>  REVOKE INSERT, DROP ON 'database명'.'table명'FROM 'user명'@'server명';
[AWS] EC2 Ubuntu에서 MySQL 사용하기

[AWS] EC2 Ubuntu에서 MySQL 사용하기

Ubuntu 패키지 정보 업데이트

1
2
sudo apt update
sudo apt upgrade

MySQL 설치

1
sudo apt install -y mysql-server

MySQL 기본 세팅

1
2
3
sudo ufw allow mysql # 외부 접속 기능 설정 (포트 3306 오픈)
sudo systemctl start mysql # Mysql 실행
sudo systemctl enable mysql # Ubuntu 서버 재시작시 Mysql 자동 재시작

MySQL 외부접속 설정

1
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address를 127.0.0.1 -> 0.0.0.0 으로 변경

MySQL 언어셋 한글 설정

1
sudo vi /etc/mysql/my.cnf

맨 밑에 다음 코드 첨부

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[client]
default-character-set = utf8

[mysqld]
init_connect = SET collation_connection = utf8_general_ci
init_connect = SET NAMES utf8
character-set-server = utf8
collation-server = utf8_general_ci

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set = utf8
1
2
3
sudo systemctl restart mysql # Mysql 재실행
sudo mysql # MySQL 접속
mysql> status;

MySQL 상태확인

1
sudo systemctl status mysql


MySQL 사용자 등록 및 권한 설정

1
2
mysql> create user '계정이름'@'%' identified by '패스워드';
mysql> grant all privileges on *.* to '계정이름'@'%' with grant option;

인스턴스 인바운드 규칙 설정


외부에서 MySQL 접속확인

MySQL Workbench를 이용하여 접속확인을 한다.

[백준] 1783번 병든 나이트

[백준] 1783번 병든 나이트

출처: [백준] 1783번 병든 나이트


시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 8302 3576 3048 42.827%

문제

병든 나이트가 N × M 크기 체스판의 가장 왼쪽아래 칸에 위치해 있다. 병든 나이트는 건강한 보통 체스의 나이트와 다르게 4가지로만 움직일 수 있다.

  1. 2칸 위로, 1칸 오른쪽
  2. 1칸 위로, 2칸 오른쪽
  3. 1칸 아래로, 2칸 오른쪽
  4. 2칸 아래로, 1칸 오른쪽

병든 나이트는 여행을 시작하려고 하고, 여행을 하면서 방문한 칸의 수를 최대로 하려고 한다. 병든 나이트의 이동 횟수가 4번보다 적지 않다면, 이동 방법을 모두 한 번씩 사용해야 한다. 이동 횟수가 4번보다 적은 경우(방문한 칸이 5개 미만)에는 이동 방법에 대한 제약이 없다.

체스판의 크기가 주어졌을 때, 병든 나이트가 여행에서 방문할 수 있는 칸의 최대 개수를 구해보자.


입력

첫째 줄에 체스판의 세로 길이 N와 가로 길이 M이 주어진다. N과 M은 2,000,000,000보다 작거나 같은 자연수이다.


출력

병든 나이트가 여행에서 방문할 수 있는 칸의 개수중 최댓값을 출력한다.


예제 입력 1

1
100 50

예제 출력 1

1
48

예제 입력 2

1
1 1

예제 출력 2

1
1

예제 입력 3

1
17 5

예제 출력 3

1
4

예제 입력 4

1
2 4

예제 출력 4

1
2

예제 입력 5

1
20 4

예제 출력 5

1
4

출처


알고리즘 분류


소스코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import sys

input = sys.stdin.readline

N, M = map(int, input().split())

# 4가지 모두 이용하려면, M>6
count = 0
if N == 1:
count = 1
elif N == 2: # 세로가 2이면, 2번/3번 방법만 사용가능 --> 오른쪽으로 두칸씩
count = min(4, (M + 1) // 2)
elif M < 7: # N>=3, M<7 --> 오른쪽으로 한칸씩
count = min(4, M)
else: # N>=3, M>7 --> 2,3번 한번 나머지 1,4번
count = M - 2

print(count)