Last active
December 9, 2016 06:12
-
-
Save parrot-studio/18785e65b3f116f47f0618a35662cbb6 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
https://paiza.jp/moshijo |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// 御影百合絵からのお願い | |
process.stdin.on('data', function (chunk) { | |
var line = chunk.toString().trim(); | |
var ss = line.split("\n"); | |
var ans = 0; | |
var i; | |
for(i=0;i<ss.length;i++) { | |
ans = ans + parseInt(ss[i]); | |
} | |
console.log(ans); | |
}); | |
// 春日みちるからのSOS | |
process.stdin.on('data', function (chunk) { | |
var line = chunk.toString().trim(); | |
var re = /help/; | |
if (re.test(line)) { | |
console.log('SOS'); | |
} else { | |
console.log(line); | |
} | |
}); | |
// 園田冴絵からの応援要請 | |
process.stdin.on('data', function (chunk) { | |
var line = chunk.toString().trim(); | |
var ds = line.split(' '); | |
if (ds[2] === '+'){ | |
console.log(parseInt(ds[0]) + parseInt(ds[1])); | |
} else { | |
console.log(parseInt(ds[0]) - parseInt(ds[1])); | |
} | |
}); | |
// 芦屋川雛乃からのヘルプ依頼 | |
process.stdin.on('data', function (chunk) { | |
var line = chunk.toString().trim(); | |
var ls = line.split("\n"); | |
var seq = ls[0].split(' '); | |
var ss = ls[2].split(''); | |
var ans = ''; | |
var i, rev; | |
if (ls[1] === 'encode') { | |
for(i=0; i<ss.length; i++){ | |
ans = ans + seq[parseInt(ss[i])]; | |
} | |
} else { | |
rev = []; | |
for(i=0; i<seq.length; i++){ | |
rev[parseInt(seq[i])] = i.toString(); | |
} | |
for(i=0; i<ss.length; i++){ | |
ans = ans + rev[parseInt(ss[i])]; | |
} | |
} | |
console.log(ans); | |
}); | |
// 桂乃梨子とピンチを乗り越えろ | |
process.stdin.on('data', function (chunk) { | |
var line = chunk.toString().trim(); | |
var ls = line.split("\n"); | |
var len = parseInt(ls[0]); | |
var xs = ls[1].split(' '); | |
var ys = ls[2].split(' '); | |
var i, j, y, ans; | |
for(j=0; j<len; j++){ | |
y = parseInt(ys[j]); | |
ans = []; | |
for(i=0; i<len; i++){ | |
ans.push(y + parseInt(xs[i])); | |
} | |
console.log(ans.join(' ')); | |
} | |
}); | |
// 水無瀬朋の一大事 | |
process.stdin.on('data', function (chunk) { | |
var line = chunk.toString().trim(); | |
var ls = line.split("\n"); | |
var len = parseInt(ls.shift()); | |
var prices = [0]; | |
var csizes = [0]; | |
var reduces = [0]; | |
var i, d, ans, ind, n; | |
for(i=0; i<len; i++){ | |
d = ls.shift().split(' '); | |
prices.push(parseInt(d[0])); | |
csizes.push(parseInt(d[1])); | |
reduces.push(parseInt(d[2])); | |
} | |
len = parseInt(ls.shift()); | |
for(i=0; i<len; i++){ | |
d = ls.shift().split(' '); | |
ind = parseInt(d[0]); | |
n = parseInt(d[1]); | |
ans = n * prices[ind] - ((Math.floor(n / csizes[ind])) * reduces[ind]); | |
console.log(ans); | |
} | |
}); | |
// 六村リオの緊急事態 | |
process.stdin.on('data', function (chunk) { | |
var org = chunk.toString().trim().split(' '); | |
var bs = org[0].split('/'); | |
bs.shift(); | |
var ps = org[1].split('/'); | |
var i; | |
for(i=0; i<ps.length; i++){ | |
if (ps[i] === '..') { | |
bs.pop(); | |
} else if (ps[i] === '.') { | |
} else { | |
bs.push(ps[i]); | |
} | |
} | |
console.log('/' + bs.join('/')); | |
}); | |
// 緑川つばめを窮地から救え | |
process.stdin.on('data', function (chunk) { | |
var nums = chunk.toString().trim().split(''); | |
var ans = []; | |
var stack = []; | |
var exec = false; | |
var n, b, i; | |
while(true) { | |
if (nums.length <= 0) { | |
break; | |
} | |
n = parseInt(nums.shift()); | |
if (exec) { | |
ans.push(0); | |
continue; | |
} | |
if (n >= 5){ | |
b = (ans.pop() || 0)+ 1; | |
ans.push(b); | |
for(i=0; i<stack.length; i++){ | |
ans.push(0); | |
} | |
ans.push(0); | |
exec = true; | |
} else if (n == 4) { | |
stack.push(n); | |
} else { | |
for(i=0; i<stack.length; i++){ | |
ans.push(stack[i]); | |
} | |
stack = []; | |
ans.push(n); | |
} | |
} | |
var as = ""; | |
for(i=0; i<ans.length; i++){ | |
as = as + ans[i].toString(); | |
} | |
console.log(as); | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 御影百合絵からのお願い | |
puts(gets.to_i + gets.to_i + gets.to_i) | |
# 春日みちるからのSOS | |
s = gets | |
puts (s.match(/help/) ? 'SOS' : s) | |
# 園田冴絵からの応援要請 | |
a, b, op = gets.split(' ') | |
case op | |
when '+' | |
puts a.to_i + b.to_i | |
when '-' | |
puts a.to_i - b.to_i | |
end | |
# 芦屋川雛乃からのヘルプ依頼 | |
seq = gets.split(' ').map(&:to_i) | |
order = gets.chomp | |
org = gets.chomp.chars.map(&:to_i) | |
if order == 'encode' | |
puts org.map{|n| seq[n].to_s}.join('') | |
else | |
rev = [] | |
seq.each.with_index{|n, i| rev[n] = i} | |
puts org.map{|n| rev[n].to_s}.join('') | |
end | |
# 桂乃梨子とピンチを乗り越えろ | |
size = gets.to_i | |
xs = gets.chomp.split(' ').map(&:to_i) | |
ys = gets.chomp.split(' ').map(&:to_i) | |
ys.each do |y| | |
puts xs.map{|n| n + y}.map(&:to_s).join(' ') | |
end | |
# 水無瀬朋の一大事 | |
sn = gets.to_i | |
prices = [0] | |
csizes = [0] | |
reduces = [0] | |
sn.times do | |
data = gets.chomp.split(' ').map(&:to_i) | |
prices << data.shift | |
csizes << data.shift | |
reduces << data.shift | |
end | |
an = gets.to_i | |
an.times do | |
i, num = gets.chomp.split(' ').map(&:to_i) | |
puts num * prices[i] - ((num / csizes[i]) * reduces[i]) | |
end | |
# 六村リオの緊急事態 | |
base, path = gets.chomp.split(' ') | |
bs = base.split('/') | |
bs.shift | |
ps = path.split('/') | |
ps.each do |pa| | |
case pa | |
when '.' | |
when '..' | |
bs.pop | |
else | |
bs << pa | |
end | |
end | |
puts "/#{bs.join('/')}" | |
# 緑川つばめを窮地から救え | |
nums = gets.chomp.chars.map(&:to_i) | |
ans = [] | |
stack = [] | |
exec = false | |
loop do | |
break if nums.empty? | |
n = nums.shift | |
if exec | |
ans << 0 | |
next | |
end | |
if n >= 5 | |
b = ans.pop.to_i + 1 | |
ans << b | |
stack.size.times{ ans << 0 } | |
ans << 0 | |
exec = true | |
elsif n == 4 | |
stack << n | |
else | |
ans += stack | |
stack = [] | |
ans << n | |
end | |
end | |
puts ans.map(&:to_s).join('').to_i |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment