第十一届题目

门牌制作

cs 复制代码
#include <stdio.h>
#include <stdlib.h>


int main(int argc, char *argv[])
{
  int cnt=0;
  for(int i=1;i<=2020;i++)
  {
    int t=i;
    while(t)
    {
      if(t%10==2) cnt++;
      t/=10;
    }
  }
  printf("%d",cnt);
  return 0;
}

既约分数

cs 复制代码
#include <stdio.h>
#include <stdlib.h>

int gcd(int a,int b)
{
  while(b)
  {
    int t=b;
    b=a%b;
    a=t;
  }
  return a;
}

int main(int argc, char *argv[])
{
  int cnt=0;
  for(int i=1;i<=2020;i++)
  {
    for(int j=1;j<=2020;j++)
    {
      if(gcd(i,j)==1) cnt++;
    }
  }
  printf("%d",cnt);
  return 0;
}

蛇形填数

cs 复制代码
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int ans=1;
  for(int i=1;i<20;i++)
  {
    ans+=4*i;
  }
  printf("%d",ans);
  return 0;
}

跑步锻炼

cs 复制代码
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int month_day[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  int sum=0;
  int week=6;
  for(int year=2000;year<=2020;year++)
  {
    if(year%400==0||(year%4==0&&year%100!=0)) month_day[2]=29;
    else month_day[2]=28;
    for(int month=1;month<=12;month++)
    {
      for(int day=1;day<=month_day[month];day++)
      {
        sum++;
        if(week==1||day==1) sum++;
        week=(week+1)%7;
        if(year==2020&&month==10&&day==1) 
        {
          printf("%d",sum);
          return 0;
        }
      }
    }
  }
  return 0;
}

七段码

cs 复制代码
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  printf("80");
  return 0;
}

成绩统计

cs 复制代码
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int k1=0,k2=0;
  int n;
  scanf("%d",&n);
  int grade;
  for(int i=0;i<n;i++)
  {
    scanf("%d",&grade);
    if(grade>=60) k1++;
    if(grade>=85) k2++;
  }
  float x1=(float)(k1*100.0/n);
  float x2=(float)(k2*100.0/n);
  int ans1=(int)(x1+0.5);
  int ans2=(int)(x2+0.5);
  printf("%d%%\n",ans1);
  printf("%d%%\n",ans2);
  return 0;
}

回文日期

cs 复制代码
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int date1,date2;
  scanf("%d %d",&date1,&date2);
  int d1=date1%100;
  int d2=date2%100;
  int m1=date1/100%100;
  int m2=date2/100%100;
  int y1=date1/10000;
  int y2=date2/10000;
  int month_day[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
  int cnt=0;
  for(int year=y1;year<=y2;year++)
  {
    if(year%400==0||(year%4==0&&year%100!=0)) month_day[2]=29;
    else month_day[2]=28;
    for(int month=1;month<=12;month++)
    {
      for(int day=1;day<=month_day[month];day++)
      {
        if(year==y1&&month==m1&&day<d1) continue;
        if(year==y2&&month==m2&&day<d2) continue;
        if(year==y1&&month<m1) continue;
        if(year==y2&&month>m2) continue;
        int num=year*10000+month*100+day;
        int rev=0,t=num;
        while(t)
        {
          rev=rev*10+t%10;
          t/=10;
        }
        if(num==rev) cnt++;
      }
    }
  }
  printf("%d",cnt);
  return 0;
}

字串分值和

cs 复制代码
#include <stdio.h>
#include <string.h>

int main() {
  char s[100005];
  int pos[27];
  int n;
  long long res=0;
  memset(pos,0,sizeof(pos));
  scanf("%s",s+1);
  n=strlen(s+1);
  for(int i=1;i<=n;i++)
  {
    int t=s[i]-'a';
    res+=(long long)(i-pos[t])*(n-i+1);
    pos[t]=i;
  }
  printf("%lld",res);
  return 0;
}
相关推荐
美团技术团队35 分钟前
LongCat 开源 VitaBench 2.0:长期动态智能体基准新标杆
人工智能·算法
To_OC18 小时前
LC 207 课程表:刚学图论那会儿,我连这是拓扑排序都没看出来
javascript·算法·leetcode
To_OC18 小时前
LC 208 实现 Trie 前缀树:曾被名字劝退,写完发现是送分题
javascript·算法·leetcode
BadBadBad__AK20 小时前
线段树维护区间 k 次方和
c++·数学·算法·stl
_清歌1 天前
DSpark 深度解读:DeepSeek-V4 如何用「半自回归」把推理速度提升 85%
算法
统计实现局1 天前
SVD 的三步走:双对角化、Givens 收敛、排序
算法
躬行见万象1 天前
《VLA 系列》UniLab 强化训练 | G1 机器人 |复现
算法
统计实现局1 天前
对称不定分解(Bunch-Kaufman):为什么 Cholesky 不够用
算法
统计实现局1 天前
dqrsl 拆解:拿着 QR 结果能算出哪 5 种东西
算法