Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company
- import java.util.*
- fun main() {
- val sc = Scanner(System.`in`)
- val n = sc.nextInt()
- val real = ArrayList<Long>()
- val imaginary = ArrayList<Long>()
- for (i in 0 until n) {
- val num = sc.nextLong()
- real.add(num)
- }
- for (i in 0 until n) {
- val num = sc.nextLong()
- imaginary.add(num)
- }
- val result = multiplyComplexNumbers(real, imaginary, n)
- println(result[0].toString() + " + (" + result[1] + ")i")
- }
- fun multiplyComplexNumbers(real: ArrayList<Long>, imaginary: ArrayList<Long>, n: Int): ArrayList<Long> {
- var result = ArrayList<Long>()
- result.add(1)
- result.add(0)
- for (i in 0 until n) {
- result = multiply(result[0], result[1], real[i], imaginary[i])
- }
- return result
- }
- fun multiply(a: Long, b: Long, x: Long, y: Long): ArrayList<Long> {
- // ax - by + i(bx + ay)
- val MOD: Long = 1000000007
- val result = ArrayList<Long>()
- result.add((a * x - b * y) % MOD)
- result.add((b * x + a * y) % MOD)
- return result
- }
Add Comment
Please, Sign In to add comment