「atCoder」を含む日記 RSS

はてなキーワード: atCoderとは

2024-06-26

非エンジニアだけどClaude3に増田ミュート作ってもらったよ

これを改善してってお願いした。何書いてあるかわからないけど動いたよ。

https://anond.hatelabo.jp/20240125203115

// ==UserScript==
// @name         増田ミュート(白塗り版)
// @namespace    http://tampermonkey.net/
// @version      2024-06-26
// @description  ミューワードを含む最小限の範囲白塗りにする
// @author       You
// @match        https://anond.hatelabo.jp/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=hatelabo.jp
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    const muteWords = [
        "弱者男性",
        "弱男",
        "弱者",
        "婚活",
        "男",
        "女",
        "年収",
        "下方婚",
        "発達障害",
        "発達",
        "ハッタツ",
        "ハッタショ",
        "ハッタショ",
        "競プロ",
        "競技プログラミング",
        "AtCoder",
    ];

    function whiteoutElement(element) {
        element.style.backgroundColor = 'white';
        element.style.color = 'white';
        element.style.textShadow = 'none';
        element.style.cursor = 'default';
        element.style.userSelect = 'none';  // テキスト選択を防止
        element.style.borderBottom = '1px dashed #ccc'; // 枠線を追加してテキストがあることを示す

        // リンク場合クリック無効化
        if (element.tagName === 'A') {
            element.style.pointerEvents = 'none';
            element.removeAttribute('href');
        }

        // 子要素にも適用
        Array.from(element.children).forEach(child => {
            child.style.backgroundColor = 'white';
            child.style.color = 'white';
            child.style.textShadow = 'none';
        });

        // ツールチップを追加
        element.title = 'この内容にはミューワードが含まれています';
    }

    function shouldMute(text) {
        return muteWords.some(word => {
            const parts = word.split('');
            const regex = new RegExp(parts.map(char => `${char}\\s*`).join(''), 'i');
            return regex.test(text);
        });
    }

    function findSmallestMuteableElement(element) {
        if (element.nodeType === Node.TEXT_NODE) {
            return shouldMute(element.textContent) ? element.parentElement : null;
        }

        if (element.tagName === 'PRE' || element.tagName === 'CODE') {
            return shouldMute(element.textContent) ? element : null;
        }

        for (let child of element.childNodes) {
            const result = findSmallestMuteableElement(child);
            if (result) return result;
        }

        return shouldMute(element.textContent) ? element : null;
    }

    function processElement(element) {
        const muteableElement = findSmallestMuteableElement(element);
        if (muteableElement) {
            whiteoutElement(muteableElement);
        }
    }

    function processAllElements(root = document.body) {
        const walker = document.createTreeWalker(
            root,
            NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_TEXT,
            null,
            false
        );

        let node;
        while (node = walker.nextNode()) {
            if (node.nodeType === Node.ELEMENT_NODE) {
                processElement(node);
            } else if (node.nodeType === Node.TEXT_NODE && node.parentElement) {
                processElement(node.parentElement);
            }
        }
    }

    function handleClickEvent(event) {
        setTimeout(() => {
            processAllElements(event.target);
        }, 100);
    }

    // 初回実行
    processAllElements();

    // クリックイベント監視
    document.body.addEventListener('click', handleClickEvent);

    // DOM変更の監視
    const observer = new MutationObserver(mutations => {
        mutations.forEach(mutation => {
            if (mutation.type === 'childList') {
                mutation.addedNodes.forEach(node => {
                    if (node.nodeType === Node.ELEMENT_NODE) {
                        processAllElements(node);
                    }
                });
            } else if (mutation.type === 'characterData') {
                processElement(mutation.target.parentNode);
            }
        });
    });

    observer.observe(document.body, { childList: true, subtree: true, characterData: true });
})();

anond:20240625191650

増田atcoderユーザー多くて高圧的な奴多いのってそういうこと……

anond:20240626134856

事実だし、その上で

からな。彼が守りたいのはエンジニアリングでも本来意味での競技プログラミングでもなく、Atcoderというサービス自分の財布に過ぎない。

カルトと同じだよ。

anond:20240626131457

atCoderとかはそうだよ

なんならGAFA面接でもある程度はそう

ただGAFA面接だと競プロ的にはものすごく基本的なやつしか聞かれなくて応用力を求められる

A*なんて聞かれないし知っててもプラスには多分ならない

ダイクストラでいいしなんならコード間違っててもいい

anond:20240626131048

関係ないよ

kaggleだとxgboostが猛威を振るったけどあれとディープラーニングのどのアルゴリズムとか通常の検索とかのアルゴリズムとは全然分野がちがってそれに詳しいかatCoderなどに強いとも限らないし、逆も同じ

2024-06-25

anond:20240625210038

残念ながら競プは研究職にも向いてないんだよなあ

彼らは既存アルゴリズムを暗記するのが得意なだけで、新しいアルゴリズム発見するセンスはない

現在AtCoderメタ覚えゲーになっている以上仕方ないことではあるのだが

anond:20240625191650

「そんな事もわからないんですか」はマジで言うやついる。このご時世に君本当にそれ言って大丈夫?って逆に心配になるレベルで。

そしてそういうやつのSlackを辿ると100%Atcoderの話をしている。

これってトリビアになりませんか?

anond:20240625191650

Atcoder代表(高橋?)を神と崇め奉ってるのがいて気持ち悪かった。

そのくせKnuthは知らないんだから笑える。

2024-05-22

anond:20240522190203

俺はね、応用力を身につければそれが最短ルートだって言ってんのよ

atcoderをやるのでもいいしオリジナルWEBサービスを作るのでもいいけど、さすがにchatgptのAPIを使う程度じゃ何も学習してねぇよな

2024-05-19

プログラマの中でも反AIの動きが出ている

競技プログラミングって知ってるか?要するにプログラミングの腕試しをするコンテストだ。で、昨日、AtCoderコンテストで起こった事件プログラマ界隈をザワつかせてる。

何があったかって?ChatGPTが使われて、普通な上級しか解けない問題が解かれたんだよ。おかげで、自分の実力じゃありえない順位に入ったやつが出てきたわけだ。

これに対して競プロコミュニティ大炎上。「ChatGPTが界隈を破壊する」「おもんない」って声が上がって、規制しろってムードが一気に広がった。

なあ、これって絵師界隈の反AI運動そっくりじゃね?

普段、親AIを気取って反AI馬鹿にしてるプログラマたちが、自分たちの立場が脅かされるとたんに反AIに早変わり。

要するに、自分たちの「城」が危なくなると、途端にAIを敵視し始めるんだよ。

この現象は、技術進歩が人々の立場や考え方にどれだけ影響を与えるかをよく示してる。

AIは便利で強力なツールだけど、それが人々の仕事趣味にどんな影響を与えるかについては、まだまだ議論必要だってことだな。

AtCoderおもしろ

ABCのE問題がGPT4に解かれてたらしい

ChatGPTで解けそうか事前に確認しろよと思うのだが

それよりも社長危機感を持ってなさそうなところが悲しいね

楽しんでやる競技位置付けておきながらチーターを野放しにするなんて

ランキングを見ても楽しくなくなるしゲームとして終わってる

2024-05-07

高校生の頃からAtCoderあったら今よりもっと給料もらってた気がする。

2024-04-15

要するに競技プログラミング (特にAtCoder) って

「与えられた変数のオーダーに従って、それが許容される計算量のラインアルゴリズムを探して、それを実装するゲーム

って理解で合ってる?


難しいところは

アルゴリズムを探す

実装する

という認識でいい?計算量がいくら許容されるかは結構すぐわかりそうだし

で最終的には「アルゴリズムを探す」という点に終着する。アルゴリズムがわかれば、実装するというのは比較簡単だろうしね

この変数のオーダーならO(n^2)でも大丈夫だけど、これはO(logn)のアルゴリズム必要だ。O(logn)のアルゴリズムで処理したデータはこの程度のオーダーなので......。これを繰り返していく感じ


自分マジで最初最初問題すら実装できないんだけど(AtCoderならABCのA問題すら ChatGPTの解説必要

なんとなく終着点まで見えちゃった感じ。あんまりやる気がおきない

機械学習系の競プロ計算量より、正確性を重視するのかな?

量子アルゴリズムの競プロもあるらしくて、これは興味ある

2024-03-30

Atcoder茶色コーダーで上位50%だけど

ブコメとか読んでると結構レベル低い人多いかはてなの中では上位20%に相当すると思うわ

2024-02-12

anond:20240212230341

演算能力って遺伝要素もあるけど、帰納的に身につけるケースが多いよな

atcoderでひたすら時間かけて練習するみたいな

2024-02-07

anond:20240207222720

いやあ、SWEコミュ力重要視されるからまず面接で落ちる(自分は重度の吃音症)し、機械学習エンジニア修士卒以上じゃないと厳しい(自分学部卒)だから詰んでるんだよな。

AtCoder jobsに助けを求めたが、職業紹介を断られた。理由不明

anond:20240207070041

ワイAtCoder水Kaggle Masterだけど就活全落ちしたが。

受託しか内定が出なかったか受託就職したが、隣の芝生が青く見えすぎて転職しまくり、どこにも転職できなくなりニートになった。

今は失業手当(ワイは障害者手帳を持っているので長く貰える)で食いつないでいる。助けてくれ。

2024-01-24

anond:20240124112218

AIのものディープでポンでしかないので、AIを作っている人の能力がなぜ評価されているのかも疑問

要は、インフラ運用と同じで、金と資源があるから提供している。それがAI能力無関係

知能水準からいったらatcoderアルゴリズムを書く連中の方が数段上

ログイン ユーザー登録
ようこそ ゲスト さん