zoukankan      html  css  js  c++  java
  • 跟奥巴马一起画方块&&查验身份证&&集合相似度

    #include <bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    int n,col;
    char c;
    int main()
    {
        std::ios::sync_with_stdio(false);
        cin.tie(0);
        std::cin>>n>>c;
        if(n&1) col = (n+1)>>1;
        else col = n >> 1;
        for(int i = 0; i < col; i++)
        {
            for(int j = 0; j < n; j++)
                std::cout<<c;
            std::cout<<'
    ';
        }
        return 0;
    }
    

     

     

     简单题,不清楚为什么把不合法的先存储,最后再输出会wa,orz,玄学。

    #include <bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    int n,total;
    char str[110][20];
    int len[20];
    int sum,a[110][20];
    int p[20] = {7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
    char mp[] = {'1','0','X','9','8','7','6','5','4','3','2'};
    int main()
    {
        std::ios::sync_with_stdio(false);
        cin.tie(0);
        std::cin>>n;
    
        for(int i = 0; i < n; i++)
        {
            std::cin>>str[i];
            len[i] = strlen(str[i]);
        }
     //   for(int i = 0; i < n; i++) std::cout<<str[i][17]<<" "; std::cout<<'
    ';
     //   for(int i = 0; i < 11; i++) std::cout<<mp[i]<<" "; std::cout<<'
    ';
        for(int i = 0; i < n; i++)
        {
            bool flag = true;
            for(int j = 0; j < len[i]-1; j++)
            {
                int t = str[i][j] - '0';
                if(t >= 0 && t <= 9) a[i][j] = t;
                else flag = false, j = len[i];
            }
    
            if(!flag)  //如果前17位存在不是数字,直接输出
                std::cout<<str[i]<<'
    ';
            else
            {
                sum = 0;
                for(int j = 0; j < len[i] - 1; j++)
                    sum += p[j]*a[i][j];
                int mod = sum%11;
                if(mp[mod] == str[i][17])  //检验最后一位,合法
                    total ++;
                else   //不合法
                    std::cout<<str[i]<<'
    ';
            }
        }
    
        if(total == n) std::cout<<"All passed"<<'
    ';
        return 0;
    }
    

    #include <stdio.h>
    #include <set>
    using namespace std;
    typedef long long ll;
    int n,k,num,x,y,a;
    set<int>s[55];
    set<int>total;
    int main()
    {
        scanf("%d",&n);
        for(int i = 1; i <= n; i++)
        {
            scanf("%d",&num);
            for(int j = 0; j < num; j++)
            {
                scanf("%d",&a);
                s[i].insert(a);
            }
        }
        scanf("%d",&k);
        for(int i = 1; i <= k; i++)
        {
            total.clear();
            int flag = 0;
            scanf("%d%d",&x,&y);
            int lenx = s[x].size(), leny = s[y].size();
            set<int>::iterator it;
            for(it = s[x].begin(); it != s[x].end(); it++)
                if(s[y].find(*it)!=s[y].end())
                    flag++;    //共有的
    
            int yy = lenx + leny - flag;   //两个集合总共的元素个数
            double ans = (100.0)*flag/yy;
            printf("%.2f%
    ",ans);
        }
        return 0;
    }
    

      

  • 相关阅读:
    数据结构 -- 栈(一)
    数据结构 -- 栈(二)
    Linux 静态库 & 动态库
    Python及Pycharm安装详细教程
    Makefile研究(三) —— 实际应用
    Makefile研究(二)—— 完整可移植性模板
    Makefile研究 (一)—— 必备语法
    JSON 下 -- jansson 示例
    C语言中的static 详细分析
    Linux 命令 -- tar
  • 原文地址:https://www.cnblogs.com/Edviv/p/12256444.html
Copyright © 2011-2022 走看看