2 条题解
-
0
#include<iostream> using namespace std; typedef long long ll; int n; ll k; const int N=110; int a[N]; ll m=0,cnt=0; int find(ll k) { ll x=1; for(int i=1;;i++) { x=x*2; if(x>=k) { m=x; return i; } } } int main() { char x='a'; cin>>k>>n; for(int i=0;i<n;i++) cin>>a[i]; if(k==1) { cout<<"a"; return 0; } while(k>1) { int x=find(k); if(k<=m/2) k=k%(m/2); else if(k>m/2) { if(a[x-1]==0) k=k-m/2; else if(a[x-1]==1) { k=k-m/2; cnt++; } } } cnt%=26; char y=x+cnt; cout<<y; return 0; }
信息
- ID
- 1085
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 9
- 标签
- 递交数
- 11
- 已通过
- 3
- 上传者