মূলগুলি ঘোরান


11

কাল্পনিক এবং বাস্তব লাইনে এমন পূর্ণসংখ্য সহগ এবং শিকড়গুলির সাথে একটি ননজারো বহুপদী দেওয়া যেমন যদি aএকটি মূল হয় তবে -a90 ডিগ্রি দ্বারা ঘোরানো শিকড়গুলির সাথে আরও একটি বহুবচন ফিরিয়ে আনুন।

বিস্তারিত

বহুপদী কোনও যুক্তিসঙ্গত বিন্যাসে দেওয়া যেতে পারে, যেমন সহগের তালিকা হিসাবে। প্রতিসম শর্ত যা aএকটি মূল এবং যদি -aকেবল একটি শিকড় হয় তবে আবর্তিত বহুভুজকে বাস্তব সংখ্যার সহগগুলিও রাখে।

উদাহরণ

নীচে বহুভৌমসমূহকে নিম্নোক্ত ডিগ্রীতে মনোমিয়ালের সহগের তালিকা হিসাবে দেওয়া হয়। (অর্থাৎ ধ্রুবক শেষ আসে) বহুপদীটির x^2-1শিকড় থাকে {1,-1}। এগুলি ঘোরানোর 90°মাধ্যমে i(কাল্পনিক ইউনিট) দ্বারা গুণ করা হয় , সুতরাং আউটপুট বহুবর্ষের শিকড় হওয়া উচিত {i,-i}, যা x^2 + 1

Input / Output
[1 0 10 0 -127 0 -460 0 576]  [1 0 -10 0 -127 0 460 0 576]
[1 0 -4 0] [1 0 4 0]
[1] [1]

আমি বহুপথের পাশাপাশি বহুবর্ষের ডিগ্রি নিতে পারি
রোহান ঝুনঝুনওয়ালা

হ্যাঁ আমি মনে করি এটি গ্রহণযোগ্য।
flawr

আপনার সমস্ত উদাহরণ মনিক বহুবচন ব্যবহার করে। আমরা কি অনুমান করতে পারি যে ইনপুট বহুবর্ষটি সোনিক হবে? আউটপুট বহুপদী দেয় আছে monic হবে?
ডেনিস

না এটির চেয়ে 1 এর তুলনায় অন্যান্য শীর্ষস্থানীয় সহগগুলিও থাকতে পারে এবং আউটপুটটি কেবলমাত্র এক অবিচ্ছেদ্য একাধিক পর্যন্ত সংজ্ঞায়িত হয়।
flawr

দেখে মনে হচ্ছে বিন্যাসটি সহগের একটি তালিকা হতে হবে না। যুক্তিসঙ্গত ফর্ম্যাটগুলি কতদূর যেতে পারে? আমার ফর্ম্যাটটি কি অনির্দিষ্টকালে স্ট্রিং এক্সপ্রেশন হতে পারে x, যাতে আমার জমাটি স্ট্রিং-প্রতিস্থাপন xকরতে পারে (i*x)? আমার ফর্ম্যাটটি এমন কোনও ফাংশনটি করতে পারে যা বহুপদী মূল্যায়ন করে, যাতে আমার জমাটি ফাংশনটির সাথে এটি রচনা করতে পারে x -> i*x?
xnor

উত্তর:


12

গণিত, 10 বাইট

শুদ্ধ ফাংশন যা x এর ফাংশন নেয় এবং ix এর বিকল্পগুলি।

#/.x->I*x&

মাত্র 7 বাইটের সাথে বিকল্প তবে এটি গণনা করে কিনা তা পুরোপুরি নিশ্চিত নয়। খাঁটি ফাংশন যা খাঁটি ফাংশন নেয় এবং এক্স এর ফাংশন দেয়।

#[I*x]&

5
এবং আপনার কোনও বিল্টিনেরও দরকার ছিল না!
নিল

আমি নিশ্চিত যে খাঁটি ফাংশন বহুপদী একটি "যুক্তিসঙ্গত ফর্ম্যাট" (যেমন এটি এখানে ছিল ) এটি #পরিবর্তনশীল হিসাবে ব্যবহার করে এবং &এর শেষে রয়েছে has
জংহওয়ান মিন

আমি পারলে দু'বার এই উত্সাহ দিতাম
গ্রেগ মার্টিন

দ্বিতীয় উত্তরের সম্পর্কে আমার একমাত্র উদ্বেগ হ'ল ইনপুট (খাঁটি ফাংশন) এবং আউটপুট (x এর ফাংশন) এর মধ্যে মিল।
ইয়ান মিলার

6

জেলি , 5 বাইট

Jı*Ċ×

এটি অনলাইন চেষ্টা করুন!

কিভাবে এটা কাজ করে

গুণিতকের প্রথম উপাদান 1দ্বারা তৃতীয় উপাদান -1, ইত্যাদি

Jı*Ċ×  argument: z
J      [1,2,...,len(z)]
 ı     i (the imaginary unit)
  *    to the power of (each element)
   Ċ   imaginary part
    ×  multiply by input (vectorize)

অ্যালগরিদমের প্রমাণ

বহুপদী হোক f(x)

যেহেতু আমরা গ্যারান্টী আছে যে যদি xতারপর একটি রুট তাই হয় -x, তাই fএমনকি হতে হবে, যার মানে হল বিজোড় ক্ষমতা তার সহগ হওয়া আবশ্যক 0

এখন, দ্বারা শিকড় আবর্তিত 90°মূলত f(ix)

সহগের তুলনা করে প্রসারিত করার পরে অ্যালগরিদম প্রমাণিত হয়।


সুতরাং, আমাদের ২,৪ র্থ, 6th ষ্ঠ, অষ্টম ইত্যাদি স্পর্শ করার দরকার নেই?
রোহান ঝুনঝুনওয়ালা

2
এগুলি যাইহোক শূন্য।
flawr

আপনার কৌশলটি ı*Ċখুব সুন্দর, আপনার এটি ব্যাখ্যা করা উচিত :)
লিও

@ লিও এটি মূলত একটি সরল বাস্তবায়ন যদিও ...
লিকি নুন

এখানে যুক্তিটি একেবারেই সঠিক নয়, কারণ আপনার পরিবর্তে এমনকি সমস্ত শক্তির জন্য 0 এর সমস্ত সহগ থাকতে পারে
--রঞ্জন জোহানসেন

5

জাভাস্ক্রিপ্ট (ES6), 25 বাইট

a=>a.map((e,i)=>i%4?-e:e)

আসল বহুবর্ষে ফর্মটির সমাধান x = ±aরয়েছে যেখানে আসল বা কাল্পনিক লাইনে রয়েছে। যখন a = 0(কোন ক্ষেত্রে xবহুপদী একটি উপাদান) বাদে , এর অর্থ x² - a²এটি বহুবর্ষের একটি উপাদান (যার অর্থ বিকল্প পদ সর্বদা শূন্য থাকে)। এখন যখন আমরা শিকড়গুলি ঘোরান তখন ফ্যাক্টরটি পরিবর্তিত হয় x² + a²। যেহেতু সমস্ত কারণ একই সাথে পরিবর্তিত হয়, বহুপথের তৃতীয় পদটি, যা সমস্ত -a²পদগুলির যোগফল , পরিবর্তনের চিহ্ন, পঞ্চম পদ, যা -a²পদগুলির জোড়াগুলির পণ্যগুলির যোগফল হয় , একই চিহ্ন রাখে, ইত্যাদি keeps প্রতিটি অন্যান্য পদ পরিবর্তন।


4

অক্টাভা , 27 বাইট

@(x)round(poly(roots(x)*j))

এটি অনলাইন চেষ্টা করুন!

এটি সরাসরি সংজ্ঞাটি প্রয়োগ করে: গণনা শিকড়গুলি, গুণ করে j, শিকড় থেকে বহুবর্ষে রূপান্তর করে। ভাসমান-পয়েন্ট সংখ্যাগত ত্রুটির কারণে একটি চূড়ান্ত বৃত্তাকার প্রয়োজন।



1

সিলোস , 71 66 বাইট

readIO
b=i
lbla
readIO
d=c
d&2
i=i*(1-d)
printInt i
b-1
c+1
if b a

এটি অনলাইন চেষ্টা করুন!

@ লাইটি নুন 5 টি বাইট সংরক্ষণ করতে এখানে কী কী জাদুকরি করেছে তা আমার কোনও ধারণা নেই।

বের করার জন্য আমাকে এক সেকেন্ড সময় নিয়েছে, তবে সি এর দ্বিতীয় বিটটি আমাদের যেমন চাইছে তেমন বিকল্প হবে। অতএব @ লিকি নুন আমাদের প্রয়োজনীয় বিটগুলি সংরক্ষণ করতে এটি ব্যবহার করে।



0

টিআই-বেসিক, 20 বাইট

seq(real(i^X/i)Ans(X),X,1,dim(Ans

যদি এতে সঞ্চিত থাকে তবে এর prgmAসাথে চালান:

{1, 0, 3, 0, 1}:prgmA

seq(কেবল একটি * কমান্ড হওয়া উচিত যা জটিল সংখ্যাগুলি সমর্থন করে না। :)

*: অতিরঞ্জিত


0

ক্যাসিও-বেসিক, 8 বাইট

n|x=𝑖x

ইয়ান মিলারের ম্যাথমেটিকা ​​পদ্ধতির ব্যবহার করে অজানা ফাংশন। কাল্পনিক the ম্যাথ 2 কীবোর্ডের ব্যবহার করা দরকার (2 বাইট হিসাবে গণনা করা হবে, চর কোড 769), এবং বহুভুজের সমীকরণ হিসাবে প্রবেশ করা উচিত x

কোডের জন্য 7 বাইট, nপ্যারামিটার হিসাবে নির্দিষ্ট করতে 1 বাইট ।

ব্যাখ্যা : সমীকরণ নেয় n, তারপরে কেবল সমস্ত দৃষ্টান্তের xসাথে প্রতিস্থাপন করে 𝑖x



0

স্ট্যাক্স , 5 বাইট

Æ[]▐↨

চালান এবং অনলাইন ডিবাগ!

জেলি উত্তর পোর্ট।

ব্যাখ্যা করতে ASCII প্রতিনিধিত্ব ব্যবহার করুন:

mih|1*
m         Map each element with rest of program, print mapped results on individual lines
 i        Current 0-based loop index
  h       Floor(i/2)
   |1     (-1)^(i/2)
     *    Multiply with current element

যদি শীর্ষস্থানীয় জিরো হতে পারে তবে তাদের প্রথমে ছাঁটাই করা দরকার এবং এটি অন্য বাইটের দামেও করা যেতে পারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.