A. Crazy Computer
题意:如果b - a ≤ c,那么屏幕上的这两个数都会存在,如果b - a > c屏幕上的所有数都消失,输出最后在屏幕上剩下几个数、
思路:直接模拟、
这题- -、 最后居然被人叉了、 确实我题目完全没看懂 但我A了、注意这句话:If b - a > c, theneverything on the screen disappears and after that the word you have typed appears on the screen.
#include<cmath>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<queue>
#include<stack>
#include<vector>
#include<utility>
using namespace std;
typedef long long ll;
const int qq = 1e5+10;
int n;
ll num[qq];
int main(){
ll n,c;scanf("%lld%lld",&n, &c);
int cnt=0;
ll a,b=0;
for(int i=1; i<=n; ++i){
scanf("%lld",&a);
if(a>b+c) cnt=0;
cnt++;
b=a;
}
printf("%d\n", cnt);
return 0;
}
B. Complete the Word
题意:问连续的长度为26的子串里面是否存在从A到Z的所有不同的单词
思路:brute force O(26*s)
vis数组没清空真的WA哭我了、
#include<cmath>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<queue>
#include<stack>
#include<vector>
#include<utility>
using namespace std;
typedef long long ll;
const int qq = 1e5+10;
char str[qq];
int vis[30];
int lack[30];
int main(){
scanf("%s",str);
int len=strlen(str);
//printf("%d\n", len);
if(len<26){
printf("-1\n");
return 0;
}
int kind = 0;
int l=0;
int flag=0;
for(int i=0; i<len-25; ++i){
int kind=0;
for(int j=i; j<i+26; ++j)
if(str[j]=='?') kind++;
else{
if(!vis[str[j]-'A']) kind++;
vis[str[j]-'A']++;
}
if(kind==26){
char lack[30];
int p=0;
for(int k=0; k<26; ++k)
if(!vis[k]) lack[p++] = k+'A';
int c=0;
for(int k=0; k<26; ++k)
if(!vis[k]) c++;
if(c!=p) continue;
c=0;
for(int k=i; k<i+26; ++k)
if(str[k]=='?') str[k]=lack[c++];
flag = 1;
break;
}
memset(vis, 0, sizeof(vis));
}
if(!flag) printf("-1\n");
else{
for(int i=0; i<len; ++i)
if(str[i]=='?') str[i] = 'C';
printf("%s\n", str);
}
return 0;
}
C. Plus and Square Root
题意思路:传送门
#include<cmath>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<queue>
#include<stack>
#include<vector>
#include<utility>
using namespace std;
typedef long long ll;
const int qq = 1e5+10;
ll num[qq];
int main(){
ll n;scanf("%lld",&n);
printf("2\n");
for(ll j=2; j<=n; ++j)
printf("%lld\n", j*(j+1)*(j+1)-(j-1));
return 0;
}