📢 공지합니다
이 게시글은 메인 페이지에 항상 고정되어 표시됩니다.
https://www.acmicpc.net/problem/2503 =begin1. 입력을 받고 저장하자.2. 모든 경우의 수를 다 넣어서 검증을 해보자3.=end# 입력N = gets.chomp.to_iinput = []N.times do data = gets.chomp.split.map(&:to_i) input.push(data)enddef solution(i, j, k, input) cnt = 0 for l in 0...N s = 0 b = 0 data = input[l] num = data[0].to_s # 첫자리 if i.to_s == num[0] s += 1 elsif i.to_s == num[1] || i.to_s == num[2] ..
https://www.acmicpc.net/problem/1966 =begin1. 입력을 받는다. data도 받아서 queue에 저장1-1. data[0]은 중요도, data[1]은 순서2. 중요도를 기점으로 배치를 해야된다. 비교를 하면서2-1. 처음에 비교를 해야됨 만약에 뒤에값보다 작으면 삭제 아니면 냅둠2-2. map 라이브러리로 ㄱㄱ=endT = gets.chomp.to_iT.times do |i| # 입력 input = gets.chomp.split.map(&:to_i) n = input[0] m = input[1] document = gets.chomp.split.map(&:to_i) queue = [] document.each.with_index do |num, j| qu..
https://www.acmicpc.net/problem/17413 S=gets.chomp.to_smessage=""space_message=""word=""flag=falsespace =falseS.each_char.with_index do |char, i| # 띄어쓰기 만났을떄 저장 if char ==" " && !space message += word.reverse message+=" " word="" # 마지막 문자 elsif S.length-1 == i && char != ">" word+=char message +=word.reverse word ="" # >tag" word+=char message+=word.reverse wo..
https://www.acmicpc.net/problem/10799 message=gets.chomp.to_scount=0stack=[]answer=0message.each_char do |char| if message[count]=="(" stack.push("(") else stack.pop if message[count-1] == "(" answer+=stack.size else answer+=1 end end count+=1endputs answer 처음에는 입력을 받을 때부터 스택에 모두 넣고 위에서부터 하나씩 빼면서 해결하려 했지만, 잘 풀리지 않았다.그래서 문자열을 그대로 받아서, 스택을 활용해 '('일 때는 넣고 ')'일 때는 빼는 방식으..
https://www.acmicpc.net/problem/20437 T = gets.chomp.to_ifor i in 0...T alphabet = Array.new(26, 0) message = gets.chomp.to_s count = gets.chomp.to_i if count == 1 puts [1,1].join(" ") next end length = message.length for j in 0...length alphabet[message[j].ord - 97] += 1 end min = 999999 max = -1 for j in 0...length cnt = 1 if alphabet[message[j].ord - 97] T = gets.ch..