-
3. 직사각형 별 찍기코딩 테스트/Level 1 2019. 10. 2. 20:07반응형
https://programmers.co.kr/learn/courses/30/lessons/12969
문제 내용은 위 링크를 참고하세요.
파이썬
흔한 답입니다.
# 인풋으로 문자열이 들어옵니다. ex) '5 3' # split(' ')은 이 문자열을 ' '으로 나누어 리스트에 저장합니다. ex) ['5', '3'] # 이를 a, b에 언패킹합니다. ex) a, b = ['5', '3'] a, b = input().split(' ') for i in range(int(b)): # a, b는 문자열이기 때문에 정수형으로 변환해야 합니다. for j in range(int(a)): print('*', end='') # end=''으로 줄바꿈(개행문자) 없이 출력합니다. print() # 한줄 출력이 끝나면 줄바꿈 해줍니다.
map 함수를 이용해서 int까지 한 번에 해결할 수도 있습니다.
a, b = map(int, input().split(' ')) for i in range(b): for j in range(a): print('*', end='') print()
for 문을 사용하지 않고 문자열의 곱으로 처리할 수도 있습니다.
a, b = map(int, input().split(' ')) print(('*' * a + '\n') * b)
자바스크립트
repeat문을 사용하면 됩니다.
process.stdin.setEncoding('utf8'); process.stdin.on('data', data => { let [a, b] = data.split(" ").map(Number) console.log(('*'.repeat(a) + '\n').repeat(b)) });
자바
자바에도 repeat가 있습니다.
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); System.out.print(("*".repeat(a) + "\n").repeat(b)); } }
고
package main import "fmt" func main() { var a, b int fmt.Scan(&a, &b) for i := 0; i < b; i++ { for j := 0; j < a; j++ { fmt.Print("*") } fmt.Println() } }
코틀린
fun main(args: Array<String>) { val (a, b) = readLine()!!.split(' ').map(String::toInt) print(("*".repeat(a) + "\n" ).repeat(b)) }
C#
using System; public class Example { public static void Main() { String[] s; s = Console.ReadLine().Split(' '); int a = Int32.Parse(s[0]); int b = Int32.Parse(s[1]); for (int j = 0; j < b; j++) { for (int i = 0; i < a; i++) { Console.Write("*"); } Console.WriteLine(); } } }
RUST
인풋 받기가 귀찮아서....
fn solution(m: i32, n: i32) { for _ in 0..m { let mut temp = String::new(); for _ in 0..n { temp.push('*'); } println!("{}", temp); } }
반응형