Please help!!! - Programmers Heaven

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

Please help!!!

Nemanja1234Nemanja1234 Posts: 2Member
[color=Red]Guys can you solve these 3 problems for me? thanks :D
Please solve at least one of these,Thanks very much![/color]
1.Given is array (s1, ..., sn) of length n. Sign si is + or -. Given is array of n + 1 numbers (a1, ..., an+ 1).

You need to put numbers between signs so that solution of this expression is maximal. You need to find value val defined as:

val = max{ap(1) s1 ... ap(n) sn ap(n + 1) | p is a permutation of numbers from 1 to n + 1.

INPUT:
In first row of standard input is natural number n (1 <= n <= 100000). In second row are n signs s1 to sn. Every sign is '+' or '-'. Signs are not separated with empty space. In third row are n + 1 numbers: a1 to an + 1, separated with empty space. All this numbers are from interval [0, 1000000].

OUTPUT:
In first and only row of standard output, You need to write this maximal value val.

Input:
3
+-+
1 2 3 4

Output:
8

Explanation:
This is the only one solution
2+3-1+4

Input:
2
++
1 3 2

Output:
6

Explanation:
Every permutation of numbers gives optimal answer.

Input:
4
----
3 12 1 2 0

Output:
6

Explanation:
Every permutation with 12 on first place is optimal.
2.n Integers are given. You need to decompose these numbers in their factors, i.e. write them as product of their prime factors. Every number write in format p1^a1*p2^a2*...*pk^ak , where p1 <= p2 <= ... <= pk are prime factors of given number (in ascending order) and a1, a2, ..., ak - are their powers. Between factors and powers are symbols '*' and '^'. No empty spaces in printed solution.


INPUT:
In first line are integer n <= 200.000. In next n lines are numbers bi for decomposition (2 <= bi <= 200.000). Every number in separated line.


OUTPUT:
On standard output write decomposition in above given format.



Notice:
In 40% tests n <= 1.000



Input:
3
10
23
180

Output:
2^1*5^1
23^1
2^2*3^2*5^1
3.Next month will be auction for buying land on recently discovered new oil fields. Fields are spread under rectangular valley X by Y (Y represented number of rows and X represented number of columns). Lower left hectare have coordinate (1, 1). Hectare is square unit of land surface.

Your company have limited budget but also have right to choose and buy land before auction start. What sellers don

Comments

  • _Atex__Atex_ Posts: 163Member
    : [color=Red]Guys can you solve these 3 problems for me? thanks :D
    : Please solve at least one of these,Thanks very much![/color]
    : 1.Given is array (s1, ..., sn) of length n. Sign si is + or -. Given
    : is array of n + 1 numbers (a1, ..., an+ 1).
    :
    : You need to put numbers between signs so that solution of this
    : expression is maximal. You need to find value val defined as:
    :
    : val = max{ap(1) s1 ... ap(n) sn ap(n + 1) | p is a permutation of
    : numbers from 1 to n + 1.
    :...............

    Here's the solution for your first problem:[code][color=Blue]{ *** Compiler: FPC 2.x.x., should work with TP6+ as well *** }
    {$mode tp}

    const max_element=12; // 12 numbers max, so the number of permutations be samller than

    12! ( !=factorial )

    type short_array=array[1..max_element] of integer;


    // swaps two integers
    procedure swap(var a,b:integer);
    begin
    if a=b then exit;
    a:=a xor b;b:=a xor b;a:=a xor b; // fast arithmetic swap
    end;

    // sorts the first "l" elements of an array in ascending order
    function sort(input:short_array;l{enght}:byte):short_array;
    var i,j:byte;
    begin
    if not(l in [2..max_element]) then exit; // check for programmer error
    for i:=l downto 2 do
    for j:=1 to i do
    if input[i]max then begin max:=t;b:=a;end; // new maximum found
    while permutate(a,j) do begin // get next combination
    t:=calculate(a,j,s);
    if t>max then begin max:=t;b:=a;end; // new maximum found

    inc(count);
    write(#8#8#8#8#8#8#8#8,calc_perc(max_fact,count)); // display progress <-- slow,

    remove for speed
    end;

    writeln(#13#10#13#10'Maximum possible value: ',max);
    write('With the given combination: ',b[1]);
    for i:=2 to j do write(s[i-1],b[i]);writeln;
    readln;
    end.
    [/color][/code]
Sign In or Register to comment.