Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Git
- ChatGPT
- PYTHON
- 자연어처리
- Baekjoon
- 금융문자분석경진대회
- 백준
- leetcode
- 맥북
- ubuntu
- hackerrank
- 편스토랑
- 편스토랑 우승상품
- 코로나19
- 데이콘
- 프로그래머스 파이썬
- Docker
- Real or Not? NLP with Disaster Tweets
- gs25
- 파이썬
- AI 경진대회
- SW Expert Academy
- Kaggle
- 더현대서울 맛집
- github
- 프로그래머스
- 우분투
- 캐치카페
- dacon
- programmers
Archives
- Today
- Total
솜씨좋은장씨
[BaekJoon] 26264번 : 빅데이터? 정보보호! (Python) 본문
728x90
반응형
코딩 1일 1문제! 오늘의 문제는 백준의 빅데이터? 정보보호! 입니다.
👨🏻💻 문제 풀이
문제에서 빅데이터가 좋은지 정보보호가 좋은지 물어봤던 총 학생 수를 제공해주었고
메모장에 적혀있는 문자열은 bigdata와 security 로만 구성되어있다는 조건이 있습니다.
이 두 가지를 활용하여 문제를 풀었습니다.
반복문을 돌면서 문자열 안에 bigdata 와 security 가 각각 몇 개 씩 존재하는지 확인하는데
이때 반복문이 돌아가는 최대 회수는 질문했던 총 학생 수 만큼 입니다.
for _ in range(N):
찾는 것은 bigdata 와 security 둘 중에 하나이므로
문자열을 탐색할때 사용할 idx 를 하나와 security, bigdata 가 각각 몇개인지 셀때 사용할 변수도 하나 만들어줍니다.
idx = 0
security, bigdata = 0, 0
문자열에서 idx 위치의 값이 "s" 이면 security 의 값을 +1 해주고
idx 는 security 길이만큼 더해주어 다음 위치를 현재 단어 바로 뒤로 이동시켜 줍니다.
if student_list[idx] == "s":
security += 1
idx += len("security")
마찬가지로 문자열에서 idx 위치의 값이 "b" 이면 bigdata 의 값을 +1 해주고
idx 는 bigdata 길이만큼 더해주어 다음 위치를 현재 단어 바로 뒤로 이동시켜 줍니다.
elif student_list[idx] == "b":
bigdata += 1
idx += len("bigdata")
이렇게 구한 bigdata 와 security 의 값을 비교하여
answer = "bigdata? security!"
if security > bigdata:
answer = "security!"
elif security < bigdata:
answer = "bigdata?"
같으면 bigdata? security 를
security 값이 더 크면 security! 를
bigdata 값이 더 크면 bigdata? 를 정답으로 하도록 하였습니다.
👨🏻💻 코드 ( Solution )
def bigdata_or_sercurity(N, student_list):
answer = "bigdata? security!"
idx = 0
security, bigdata = 0, 0
for _ in range(N):
if student_list[idx] == "s":
security += 1
idx += len("security")
elif student_list[idx] == "b":
bigdata += 1
idx += len("bigdata")
if security > bigdata:
answer = "security!"
elif security < bigdata:
answer = "bigdata?"
return answer
if __name__ == "__main__":
N = int(input())
student_list = input()
print(bigdata_or_sercurity(N=N, student_list=student_list))
'Programming > 코딩 1일 1문제' 카테고리의 다른 글
[BaekJoon] 27866번 : 문자와 문자열 (Python) (0) | 2023.03.09 |
---|---|
[BaekJoon] 6841번 : I Speak TXTMSG (Python) (0) | 2023.03.08 |
[Programmers] 바탕화면 정리 (Python) (0) | 2023.03.06 |
[Programmers] 가위 바위 보 (Python) (0) | 2023.03.05 |
[Programmers] 한 번만 등장한 문자 (Python) (0) | 2023.03.04 |
Comments