CSES - Datatähti 2018 alku - Results
Submission details
Task:Fraktaali
Sender:niklash
Submission time:2017-10-10 09:59:32 +0300
Language:C++
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED10
#2ACCEPTED10
#3ACCEPTED10
#4ACCEPTED10
#5ACCEPTED10
#6ACCEPTED10
#7ACCEPTED10
#8ACCEPTED10
#9ACCEPTED10
#10ACCEPTED10
Test results
testverdicttimegroup
#1ACCEPTED0.05 s1details
#2ACCEPTED0.04 s2details
#3ACCEPTED0.06 s3details
#4ACCEPTED0.05 s4details
#5ACCEPTED0.05 s5details
#6ACCEPTED0.04 s6details
#7ACCEPTED0.05 s7details
#8ACCEPTED0.05 s8details
#9ACCEPTED0.05 s9details
#10ACCEPTED0.08 s10details

Code

#include <iostream>
#include <cmath>
typedef unsigned int uint;
bool** fractal(uint n, uint side)
{
if (n==1)
{
bool **valp; valp=new bool*; valp[0]=new bool(false);
return valp;
}
bool **frac;
side/=2;
frac=new bool*[side];
frac=fractal(n-1,side);
bool **newfracp;
newfracp=new bool*[2*side];
for (uint i=0;i<2*side;++i)
newfracp[i]=new bool[2*side];
for (uint i=0;i<side;++i)
{
for (uint j=0;j<side;++j)
{
newfracp[i][j]=frac[i][j];
newfracp[side+i][j]=frac[i][j];
newfracp[i][side+j]=frac[i][j];
newfracp[side+i][side+j]=!(frac[i][j]);
}
}
// deallocation in reverse order
for (uint i=side-1;i>0;--i) delete[] frac[i];
//for (uint i=0;i<side;i++) delete[] frac[i];
return newfracp;
}
bool** fractal(uint n)
{
return fractal(n+1,pow(2,n));
}
int main(int argc, char** argv)
{
int input; std::cin>>input;
if (input<2) input=1;
bool** frac=fractal(input);
for (uint i=0;i<pow(2,input-1);++i)
{
for (uint j=0;j<pow(2,input-1);++j)
frac[i][j] ? std::cout<<"." : std::cout<<"#";
std::cout<<std::endl;
}
return 0;
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
1

correct output
#

user output
#

Test 2

Group: 2

Verdict: ACCEPTED

input
2

correct output
##
#.

user output
##
#.

Test 3

Group: 3

Verdict: ACCEPTED

input
3

correct output
####
#.#.
##..
#..#

user output
####
#.#.
##..
#..#

Test 4

Group: 4

Verdict: ACCEPTED

input
4

correct output
########
#.#.#.#.
##..##..
#..##..#
####....
...

user output
########
#.#.#.#.
##..##..
#..##..#
####....
...

Test 5

Group: 5

Verdict: ACCEPTED

input
5

correct output
################
#.#.#.#.#.#.#.#.
##..##..##..##..
#..##..##..##..#
####....####....
...

user output
################
#.#.#.#.#.#.#.#.
##..##..##..##..
#..##..##..##..#
####....####....
...

Test 6

Group: 6

Verdict: ACCEPTED

input
6

correct output
##############################...

user output
##############################...

Test 7

Group: 7

Verdict: ACCEPTED

input
7

correct output
##############################...

user output
##############################...

Test 8

Group: 8

Verdict: ACCEPTED

input
8

correct output
##############################...

user output
##############################...

Test 9

Group: 9

Verdict: ACCEPTED

input
9

correct output
##############################...

user output
##############################...

Test 10

Group: 10

Verdict: ACCEPTED

input
10

correct output
##############################...

user output
##############################...