重新振作第26-32天----没救了

依旧是废物的生活。。。。天天白天都在摆烂刷视频,没有力气来进行复习,要哭了要。。。。。

软件设计大作业

拼了两个通宵才弄完,前面真的太摆烂了

软件设计个人小实验

结合学长的资料还有AI工具,进行二次修改和创造

软件设计数据库

自学一手flask+vue,做了一个很抽象的小网页连接数据库

移动应用开发个人实验2-3

emmmm这个东西真的纯自己写??????
每个实验都有几千行代码????
感觉大部分都是AI还有git,然后二创,这就是开源的作用!!!

软件设计问题思考

依旧是一个通宵,查了知乎和chat还有一堆东西,造出来的残次品

退役的败犬

题目链接:https://atcoder.jp/contests/abc354/tasks/abc354_e
题目分析:看注释
代码实现:

#include<bits/stdc++.h>
#define int long long
#define endl '\n'
#define ios ios::sync_with_stdio(0);cin.tie(0);cout.tie(0)
using namespace std;
const int N=2e6+10;
const int MAX=1e6+5;
const int mod=1E9+7;
int n;
void solve(){
    cin>>n;
    pair<int,int>a[n+2];
    for(int i=0;i<n;i++){
        cin>>a[i].first>>a[i].second;
    }

    vector<int>mp(1<<n,0);
    vector<int>vis(1<<n,0);
    // 1代表从当前往后是一定获胜,0代表必定输
    // 思路是如果从最终的往前推,如果当前的存在是可以0,则前一步的都是1,除非当前的全是1,才可以前一步是0。
    queue<int>q;
    // 一开始0和单独的一张牌都是必输,初始化
    q.push(0);
    mp[0]=0;
    vis[0]=1;
    for(int i=0;i<n;i++){
        mp[1<<i]=0;
        vis[1<<i]=1;
        q.push(1<<i);
    }

    while(q.size()){
        int x=q.front();
        q.pop();
        for(int i=0;i<n;i++){
            for(int j=i+1;j<n;j++){
                if(((x>>i)&1)==1&&((x>>j)&1)==1&&(
                    a[i].first==a[j].first||
                    a[i].second==a[j].second
                    )
                ){
                    // 思路是如果从最终的往前推,如果当前的存在是可以0,则前一步的都是1,除非当前的全是1,才可以前一步是0。
                    if(!mp[x-(1<<i)-(1<<j)]){
                        mp[x]=1;
                        // cout<<x<<' '<<i<<" "<<j<<endl;
                    }
                }
            }
        }
        int tt;
        //后面的入队
        for(int i=0;i<n;i++){
            for(int j=i+1;j<n;j++){
                if(((x>>i)&1)==0&&((x>>j)&1)==0){
                    if(!vis[x+(1<<i)+(1<<j)]){
                        vis[x+(1<<i)+(1<<j)]=1;
                        q.push(x+(1<<i)+(1<<j));                    
                    }
                }
                
            }
        }
    }
    
    if(mp[(1<<n)-1]){
        cout<<"Takahashi"<<endl;
    }
    else {
        cout<<"Aoki"<<endl;
    }

    
}
signed main(){
    ios;
    int t;
    t=1;
    //cin>>t;
    while (t--){
        solve();
    }
    return 0;
}
posted @   菜dog的日常生活  阅读(17)  评论(2编辑  收藏  举报
相关博文:
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
点击右上角即可分享
微信分享提示