CSES - Putka Open 2015 – 4/6 - Results
Submission details
Task:Pizzeria
Sender:
Submission time:2015-10-11 19:14:42 +0300
Language:C++
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED16
#2ACCEPTED17
#3ACCEPTED67
Test results
testverdicttimegroup
#1ACCEPTED0.06 s1details
#2ACCEPTED0.06 s1details
#3ACCEPTED0.07 s1details
#4ACCEPTED0.05 s1details
#5ACCEPTED0.06 s1details
#6ACCEPTED0.06 s2details
#7ACCEPTED0.06 s2details
#8ACCEPTED0.05 s2details
#9ACCEPTED0.05 s2details
#10ACCEPTED0.05 s2details
#11ACCEPTED0.06 s3details
#12ACCEPTED0.06 s3details
#13ACCEPTED0.06 s3details
#14ACCEPTED0.06 s3details
#15ACCEPTED0.06 s3details

Code

#include <bits/stdc++.h>

#define i64 long long
#define u64 unsigned long long
#define i32 int
#define u32 unsigned int

#define pii pair<int, int>
#define pll pair<long long, long long>

#define defmod 1000000007
using namespace std;


int n;
i64 t[101010];

long long re = 0;
unordered_set<int> d;
void hae(int b){
	if(d.count(b))
		return;
	d.insert(b);
	for(int i = 0; i < n; i++){
		if(b&(1<<i)){
			re+=t[i];
			re%=defmod;

		}
		else
			hae(b|(1<<i));
	}

}
int main(){
	cin.sync_with_stdio(0);
	cin.tie(0);
	
	cin >> n;
	for(int i = 0; i < n; i++)
		cin >> t[i];

	//hae(0);
	//cout << re << endl;
	i64 k2 = 1;
	for(int i = 1; i < n; i++){
		k2*=2;
		k2%=defmod;
	}
	i64 re2 = 0;
	for(int i = 0; i < n; i++){
		re2+=t[i]*k2;
		re2%=defmod;
	}
	cout << re2 << endl;
	return 0;
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
10
14 15 98 62 44 94 18 81 23 20

correct output
240128

user output
240128

Test 2

Group: 1

Verdict: ACCEPTED

input
10
10 58 20 84 87 47 54 23 6 1

correct output
199680

user output
199680

Test 3

Group: 1

Verdict: ACCEPTED

input
10
80 83 53 72 20 34 86 59 3 60

correct output
281600

user output
281600

Test 4

Group: 1

Verdict: ACCEPTED

input
10
51 21 94 65 25 14 54 26 98 80

correct output
270336

user output
270336

Test 5

Group: 1

Verdict: ACCEPTED

input
10
98 74 9 82 76 44 95 19 21 74

correct output
303104

user output
303104

Test 6

Group: 2

Verdict: ACCEPTED

input
20
547665480 437998103 715147312 ...

correct output
900482986

user output
900482986

Test 7

Group: 2

Verdict: ACCEPTED

input
20
899274006 779214197 868921544 ...

correct output
597431505

user output
597431505

Test 8

Group: 2

Verdict: ACCEPTED

input
20
815886531 837353495 212009084 ...

correct output
500875272

user output
500875272

Test 9

Group: 2

Verdict: ACCEPTED

input
20
241554251 300825819 121861755 ...

correct output
727413214

user output
727413214

Test 10

Group: 2

Verdict: ACCEPTED

input
20
616368574 891725964 339440566 ...

correct output
983658830

user output
983658830

Test 11

Group: 3

Verdict: ACCEPTED

input
100000
139017989 246745424 98404713 1...

correct output
617854724

user output
617854724

Test 12

Group: 3

Verdict: ACCEPTED

input
100000
740140163 225697185 306382149 ...

correct output
600381749

user output
600381749

Test 13

Group: 3

Verdict: ACCEPTED

input
100000
434033625 139042292 589375131 ...

correct output
814308700

user output
814308700

Test 14

Group: 3

Verdict: ACCEPTED

input
100000
710545624 722749769 936750382 ...

correct output
818868442

user output
818868442

Test 15

Group: 3

Verdict: ACCEPTED

input
100000
952521692 471204215 999299313 ...

correct output
413038708

user output
413038708