Koala - 6기/기초 알고리즘 스터디

https://www.acmicpc.net/problem/5363 5363번: 요다 첫째 줄에 문장의 수 N이 주어진다. 둘째 줄부터 N개의 줄에는 각 문장이 주어진다. 문장의 길이는 100글자 이내이다. 단어의 개수는 3개 이상이다. www.acmicpc.net 문제해석 입력받은 문장의 맨 앞 두 단어를 문장의 맨 뒤로 보낸다 입력받은 문자열에서 앞에 2단어를 따로 빼낸 후, 맨 앞 두 단어를 지우고 맨 뒤로 붙이는 식의 과정으로 풀이를 함 코드 문제 풀이 1. N값을 입력받음 2. 문장을 리스트로 입력받음 3. 앞 단어 2개를 다른 리스트로 옮김 4. 입력받은 문장리스트에서 앞 단어 2개를 지움 5. 따로 빼놓은 앞 단어 2개를 입력받은 문장 리스트에 붙이고 출력한다.
https://www.acmicpc.net/problem/10808 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net [ 문제 해석 ] 주어진 문자열에 알파벳이 몇 개가 포함되어 있는지 구하는 문제이다. [ 코드 ] [ 문제 풀이 ] 1. 알파벳을 정규표현식으로 변환한다. 2. alphabet이 저장된 배열로 for문을 돌려 해당 정규표현식과 같은 알파벳의 개수를 개행문자 없이 출력한다.
2511번: 카드놀이 (acmicpc.net) 2511번: 카드놀이 첫 번째 줄에는 게임이 끝난 후, A와 B가 받은 총 승점을 순서대로 빈칸을 사이에 두고 출력한다. 두 번째 줄에는 이긴 사람이 A인지 B인지 결정해서, 이긴 사람을 문자 A 또는 B로 출력한다. 만약 www.acmicpc.net 문제 해석 list로 10번의 라운드동안 A와 B의 숫자를 비교한 후 승점을 계산하여 승, 패를 구분한다. 코드 문제 풀이 먼저 변수를 설명하자면 A, B는 각각 A와 B의 카드들을 저장할 list이고 a, b는 A와 B의 승점, last_win은 승점이 같을 때를 대비해 A가 이기면 1, B가 이기면 -1, 계속 비기면 0이 저장되는 변수이다. 카드를 입력받은 후에 for문을 통해 10라운드를 진행하게 된다...
4101번: 크냐? (acmicpc.net) 4101번: 크냐? 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 두 정수가 주어진다. 두 수는 백만보다 작거나 같은 양의 정수이다. 입력의 마지막 줄에는 0이 www.acmicpc.net 문제 해석 두 개의 양수를 보고 첫번 째 제시된 수가 두번 째 제시된 수보다 큰지 알아보기! 크다면 Yes가 나오게 출력하고, 아니면 No가 출력되게 한다. 코드 문제 풀이 while구문이 참이라 가정을 하고 a,b 두 양의 정수가 주어진다. a와b가 둘다 0일때는 프로그램 작동을 멈춰야 하니 break구문을 사용한다. 나머지 경우 중에서 a가 b보다 클 때는 Yes를 출력한다. 그 외에는 No를 출력하게 하면 a가 b보다 ..
https://www.acmicpc.net/problem/13752 문제해석 테스트 케이스의 개수를 입력받는다. 각 테스트 케이스에 대해서 히스토그램의 크기만큼 '=' 을 출력한다. 코드 문제풀이 테스트 케이스를 input함수를 통해 입력받는다. 그 후 for문을 통해 테스트 케이스 수만큼 반복한다. a에 히스토그램의 수를 입력받고 문자열의 곱셈을 통해 출력을 나타낸다.
https://www.acmicpc.net/problem/4740 4740번: 거울, 오! 거울 하나 또는 그 이상의 줄에 각각 ASCII 글자로 나타낼 수 있는 단어들(알파벳, 숫자, 공백, 구두점 등)로 구성된 문장을 입력한다. 각 문장은 최소 1글자에서 최대 80글자로 이루어져 있으며, ***을 www.acmicpc.net 문제 해석 ASCII 글자로 나타낼 수 있는 문자열을 입력하고, 입력이 끝나면 해당 문자열을 역순으로 출력한다. 이는 ***을 입력하기 전까지 반복된다. 코드 while True: a = input() if a == "***": break else: print(a[::-1]) 문제 풀이 입력받은 a가 ***이면 반복문을 종료하고, ***이 아니라면 문자열을 역으로 출력한다.
https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 소스코드: n=int(input()) for i in range(n): s=list(map(str,input())) num=0 for j in range(len(s)): if(s[j]=='('): num+=1 else: num-=1 if(num
https://www.acmicpc.net/problem/19944 19944번: 뉴비의 기준은 뭘까? 2020 INPC는 IGRUS 뉴비들을 위해 열리는 대회입니다. 하지만 영수 할아버지나 인용 할아버지와 같이 14학번이지만 마음만은 뉴비인 어르신들 때문에 대회장이 TLE들의 파티가 되자 뉴비의 기준을 정 www.acmicpc.net 코드 문제풀이 조건문을 사용하여 m의 범위에 따라 이에 상응하는 문구를 출력한다. ,
2557번: Hello World (acmicpc.net) 2557번: Hello World Hello World!를 출력하시오. www.acmicpc.net 문제 해석 코딩 공부의 시작, 대표적인 출력 문구이다. 코드 #include using namespace std; int main(){ cout
https://www.acmicpc.net/problem/17388 17388번: 와글와글 숭고한 첫 번째 줄에 숭실대학교의 참여도, 고려대학교의 참여도, 한양대학교의 참여도를 의미하는 세 자연수 S, K, H가 공백으로 구분되어 주어진다. (0 ≤ S, K, H ≤ 100) 세 대학의 참여도는 모두 다르다. www.acmicpc.net 문제 풀이 학교와 참여점수가 한 쌍이기 때문에 딕셔너리를 사용하여 문제를 풀었다. 마지막 출력값이 학교 이름이기 때문에 키를 점수로 놓고 학교 이름을 값으로 놓았다. 가장 작은 참여도 값을 찾을 때는 min 함수를 이용하였다. 코드 S,K,H=map(int,input().split()) A={S:"Soongsil",K:"Korea",H:"Hanyang"} if S+K+H..
2935번: 소음 수업 시간에 떠드는 두 학생이 있다. 두 학생은 수업에 집중하는 대신에 글로벌 경제 위기에 대해서 토론하고 있었다. 토론이 점점 과열되면서 두 학생은 목소리를 높였고, 결국 선생님은 크게 www.acmicpc.net [코드] [문제 풀이] Number 타입으로 출력시 숫자 출력 형식이 달라진다. 따라서 숫자를 문자열로 변환하여 풀어야하기 때문에 0의 개수를 세고 케이스를 나누어 문자열로 덧셈 또는 곱셈 결과를 출력하였다.
문제해석 첫째 줄에 테스트 케이스의 개수 T가 주어지고 그 개수의 수를 사용자가 입력하고 그 수만큼 '반복'해서 두 수의 더하기가 이루어지므로 반복문 중 하나인 'for문'을 써야겠다는 생각이 들었다. 코드 문제풀이 먼저 여기서 나올 수 있는 변수들은 두 수의 합을 구해야하므로 두 수(A,B) 그리고 얼마나 더하기를 반복할지 결정하는 수(C), 이렇게 3개다. 따라서 먼저 변수들을 모두 선언해준 뒤, for문을 이용하여 C만큼 반복하여 숫자를 더하는 경우를 구해줄 수 있도록 코드를 짰습니다.
KauKoala
'Koala - 6기/기초 알고리즘 스터디' 카테고리의 글 목록 (5 Page)