안 쓰던 블로그

솔프드 플레찍기 3일차-17362, 10757, 11943, 5676 etc. 본문

알고리즘/알고리즘 문제 풀이

솔프드 플레찍기 3일차-17362, 10757, 11943, 5676 etc.

proqk 2020. 5. 23. 13:43
반응형

교내대회에서 멘탈공격맞고 K.O

브론즈~실버나 돌아야겠다

 

17362 수학은 체육과목입니다2

1 2 3 4 5 6 7 8까지 하면 한 사이클을 도니까 8로 나눌 건데

수를 직접 써보면 알겠지만 14 15 16같이 오른쪽에서 왼쪽으로 넘어가는 수는 나머지가 1~5로 나오지 않음

그 경우만 예외로 해주면 된다

6이 나오면 4 출력, 7이면 3출력, 8이면 8로 나누고 있어서 나머지가 0이니까 나머지가 0일때는 2출력

 

 

10757 큰 수 A+B

파이썬으로 하면 그냥 출력하면 된다 갓-언어

C++로 보면 처음 딱 봤을 때는 string으로 a b를 받고

한 자리씩 int형으로 변환해서 더해주는데 만약 올림이 있다면 carry변수에 저장 해서

다음 자리의 sum을 구할 때 1을 더 더한다 라고 생각했음

근데 더 간단하게 할 수 있는 방법이 있을까 해서 맞은 사람 풀이 보다가 이쁜 코드 발견

 

https://github.com/proqk/Algorithm/blob/master/math/10757%20%ED%81%B0%20%EC%88%98%20A%2BB.cpp

이렇게 c++자체 string가지고 하는 방법인데

sum에다가 올림수도 담아서 보내기 때문에 sum하나로 해결 가능

string도 벡터마냥 저런 함수 쓸 수 있는 거 처음 알았는데.. 씨플플을 쓰고는 있지만 잘 모르는 게 많은듯

 

11943 파일 옮기기

a바구니가 사과, b바구니가 오렌지인 경우(a의 오렌지 이동+b의 사과 이동)

a바구니가 오렌지, b가 사과인 경우(a의 사과 이동+b의 오렌지 이동)

더 작은 수를 출력

 

11948 과목 선택

18247 겨울왕국 티켓 예매

16673 고려대학교에는 공식 와인이 있다

2588 곱셈

 

5676 음주 코딩

세그트리의 곱 문제였다

이 문제도 0, 1, -1만 출력하면 되기 때문에 어떤 값이 양수/음수/0인지만 저장해서 세그트리를 만든다

전형적인 세그트리 문제에서 곱셈으로 바뀌었을 뿐인 문제였는데

빡대가리같은 오타를 내놓고 못찾아서 오래걸렸다ㅜㅜ

바이너리 인덱스 트리로도 풀 수 있다던데.. 나중에 해보는 걸로

https://github.com/proqk/Algorithm/blob/master/Segment%20Tree/5676%20%EC%9D%8C%EC%A3%BC%20%EC%BD%94%EB%94%A9.cpp

 

 

반응형

'알고리즘 > 알고리즘 문제 풀이' 카테고리의 다른 글

백준 17408 6549  (1) 2020.08.01
백준 1699 제곱수의 합  (1) 2020.06.10
백준 7578 공장  (0) 2020.05.22
솔브드 플레찍기 2일차-12015, 12738, 7578, 3654, 18436  (0) 2020.05.21
솔브드 플레찍기 1일차  (0) 2020.05.19
Comments