Submission #1213087
Source Code Expand
#include <algorithm>
#include <iostream>
#include <sstream>
#include <string>
#include <cstring>
#include <vector>
#include <queue>
#include <set>
#include <map>
#include <cstdio>
#include <cstdlib>
#include <cctype>
#include <cmath>
#include <list>
#include <cassert>
#include <ctime>
#include <climits>
using namespace std;
#define PB push_back
#define MP make_pair
#define SZ(v) ((int)(v).size())
#define FOR(i,a,b) for(int i=(a);i<(b);++i)
#define REP(i,n) FOR(i,0,n)
#define FORE(i,a,b) for(int i=(a);i<=(b);++i)
#define REPE(i,n) FORE(i,0,n)
#define FORSZ(i,a,v) FOR(i,a,SZ(v))
#define REPSZ(i,v) REP(i,SZ(v))
typedef long long ll;
typedef unsigned long long ull;
ll gcd(ll a,ll b) { return b==0?a:gcd(b,a%b); }
const int MAXN=15;
int n,want;
int x[MAXN];
void run() {
scanf("%d%d",&n,&want); REP(i,n) scanf("%d",&x[i]);
ll ret=LLONG_MAX;
REP(i,1<<n) {
int cnt=0; REP(j,n) if(i&(1<<j)) ++cnt; if(cnt<want) continue;
ll cur=0; int mx=0;
REP(j,n) {
if(i&(1<<j)) {
if(x[j]<=mx) {
cur+=mx+1-x[j];
++mx;
} else {
mx=x[j];
}
} else {
mx=max(x[j],mx);
}
}
if(cur<ret) ret=cur;
}
printf("%lld\n",ret);
}
int main() {
run();
return 0;
}
Submission Info
Submission Time |
|
Task |
B - Buildings are Colorful! |
User |
krijgertje |
Language |
C++14 (GCC 5.4.1) |
Score |
350 |
Code Size |
1306 Byte |
Status |
AC |
Exec Time |
2 ms |
Memory |
256 KB |
Compile Error
./Main.cpp: In function ‘void run()’:
./Main.cpp:39:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d",&n,&want); REP(i,n) scanf("%d",&x[i]);
^
./Main.cpp:39:52: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d",&n,&want); REP(i,n) scanf("%d",&x[i]);
^
Judge Result
Set Name |
Sample |
Subtask1 |
Subtask2 |
Subtask3 |
Score / Max Score |
0 / 0 |
120 / 120 |
90 / 90 |
140 / 140 |
Status |
|
|
|
|
Set Name |
Test Cases |
Sample |
sub0_in1.txt, sub0_in2.txt |
Subtask1 |
sub1_in1.txt, sub1_in2.txt |
Subtask2 |
sub2_in1.txt, sub2_in2.txt, sub2_in3.txt |
Subtask3 |
sub0_in1.txt, sub0_in2.txt, sub1_in1.txt, sub1_in2.txt, sub2_in1.txt, sub2_in2.txt, sub2_in3.txt, sub3_in1.txt, sub3_in2.txt |
Case Name |
Status |
Exec Time |
Memory |
sub0_in1.txt |
AC |
1 ms |
256 KB |
sub0_in2.txt |
AC |
1 ms |
256 KB |
sub1_in1.txt |
AC |
2 ms |
256 KB |
sub1_in2.txt |
AC |
2 ms |
256 KB |
sub2_in1.txt |
AC |
1 ms |
256 KB |
sub2_in2.txt |
AC |
1 ms |
256 KB |
sub2_in3.txt |
AC |
1 ms |
256 KB |
sub3_in1.txt |
AC |
2 ms |
256 KB |
sub3_in2.txt |
AC |
2 ms |
256 KB |