| 提出番号 | 2105 |
|---|---|
| 提出者 | nxteru |
| 言語 | C++ |
| 提出日時 | 2018-08-04 15:16:14 |
| 問題名 | (64)Or Plus Max 2 |
| 結果 | TLE |
| 点数 | 10% |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 1 | AC | 100% | 2ms | 8736KB |
| 2 | AC | 100% | 2ms | 7232KB |
| 3 | AC | 100% | 2ms | 7984KB |
| 4 | AC | 100% | 31ms | 8432KB |
| 5 | AC | 100% | 40ms | 8432KB |
| 6 | AC | 100% | 31ms | 7216KB |
| 7 | AC | 100% | 2ms | 8416KB |
| 8 | AC | 100% | 6ms | 7984KB |
| 9 | AC | 100% | 31ms | 8704KB |
| 10 | AC | 100% | 1ms | 8704KB |
| 11 | AC | 100% | 36ms | 8000KB |
| 12 | AC | 100% | 30ms | 8480KB |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 13 | TLE | 0% | 20001ms | 0KB |
| 14 | TLE | 0% | 20001ms | 0KB |
| 15 | TLE | 0% | 20002ms | 0KB |
| 16 | TLE | 0% | 20002ms | 0KB |
| 17 | TLE | 0% | 20001ms | 0KB |
| 18 | TLE | 0% | 20002ms | 0KB |
| 19 | TLE | 0% | 20002ms | 0KB |
| 20 | TLE | 0% | 20002ms | 0KB |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 21 | TLE | 0% | 20001ms | 0KB |
| 22 | TLE | 0% | 20002ms | 0KB |
| 23 | TLE | 0% | 20002ms | 0KB |
| 24 | TLE | 0% | 20001ms | 0KB |
| 25 | TLE | 0% | 20002ms | 0KB |
| 26 | TLE | 0% | 20001ms | 0KB |
| 27 | TLE | 0% | 20002ms | 0KB |
| 28 | TLE | 0% | 20001ms | 0KB |
| 29 | TLE | 0% | 20002ms | 0KB |
| 30 | TLE | 0% | 20001ms | 0KB |
| テストケース | 結果 | 得点 | 実行時間 | メモリ使用量 |
|---|---|---|---|---|
| 31 | TLE | 0% | 20002ms | 0KB |
| 32 | TLE | 0% | 20002ms | 0KB |
| 33 | TLE | 0% | 20002ms | 0KB |
| 34 | TLE | 0% | 20001ms | 0KB |
| 35 | TLE | 0% | 20002ms | 0KB |
| 36 | TLE | 0% | 20001ms | 0KB |
| 37 | TLE | 0% | 20001ms | 0KB |
| 38 | TLE | 0% | 20001ms | 0KB |
| 39 | TLE | 0% | 20002ms | 0KB |
| 40 | TLE | 0% | 20001ms | 0KB |
| 41 | TLE | 0% | 20002ms | 0KB |
#include <iostream>
#include <algorithm>
#include <vector>
#include <set>
#include <map>
#include <queue>
#include <stack>
#include <cstdio>
#include <cstring>
#include <math.h>
using namespace std;
typedef long long ll;
typedef double D;
typedef pair<ll,ll> P;
#define M 1000000007
#define F first
#define S second
#define PB push_back
ll n,k,p,ans,a[50];
void dfs(int v){
if(v==n){
ll s=0;
for(int i=0;i<n;i++){
ll o=0,t=0;
for(int j=i;j<n;j++){
o+=a[j];
t=t^a[j];
if(o==t)s++;
}
}
if(s==k)ans++;
return;
}
for(int i=1;i<p;i++){
a[v]=i;
dfs(v+1);
}
}
int main(void){
cin>>n>>k>>p;
dfs(0);
cout<<ans<<endl;
}