AB Circle
AB Circle ←題目
好刺激阿 這是DP?
洗澡的靈機一動 覺得還蠻經典的 所以丟上來囉
紀錄到第?有幾a幾b 之後用全部的a-(範圍裡面的a就是範圍外面) b也是
/*************************************************************/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
char x[1001];
int time=1;
while(scanf("%s",x)==1)
{
printf("AB Circle #%d:\n",time++);
short int circlea[1001]={0},circleb[1001]={0};
int a,b,c,n=strlen(x);
for(a=0;a<n;a++)
{
if(x[a]=='a') circlea[a]++;
else circleb[a]++;
circlea[a]+=circlea[a-1];
circleb[a]+=circleb[a-1];
}
int m=circleb[n-1],mm=circlea[n-1];
for(a=0;a<n;a++)
for(b=a+1;b<n;b++)
if(circlea[b]-circlea[a]==m-(circleb[b]-circleb[a])||circleb[b]-circleb[a]==mm-(circlea[b]-circlea[a]))
printf("%d,%d\n",a,b);
}
return 0;
}
下一篇:身分證檢驗
可以給我基礎題庫的 身分證字號那題的嗎?謝謝你