第十一届题目

门牌制作

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;
}
相关推荐
浅念-13 分钟前
分治算法专题|LeetCode高频经典题目详细题解
数据结构·c++·算法·leetcode·职场和发展·排序·分治
Magic-Yuan17 分钟前
算力的迷雾
人工智能·算法·机器学习
何何____23 分钟前
web组第一次考核题解
算法
wayz1133 分钟前
Day 16:PCA主成分分析与降维
人工智能·算法·机器学习
熬夜敲代码的猫35 分钟前
C++继承:让你从入门到深入
c++·算法·继承
人道领域41 分钟前
【LeetCode刷题日记】239.滑动窗口最大值:单调队列解法(困难)
java·开发语言·算法
Irissgwe41 分钟前
优选算法精讲(专题一)
数据结构·算法
睡觉就不困鸭43 分钟前
第十五天 反转字符串
数据结构·算法
生物信息与育种1 小时前
JIPB | 一个表观多组学整合分析与可视化工具OmicsCanvas
运维·人工智能·算法·自动化·transformer
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题】【Java基础篇】第17题:HashMap的加载因子为什么是0.75而不是1或0.5
java·开发语言·算法·哈希算法·散列表