約 3,227,236 件
https://w.atwiki.jp/harumi_programming/pages/3.html
更新履歴 取得中です。 ここを編集
https://w.atwiki.jp/pissyard/
last update 0000-00-00 00 00 00 Harvey M. Deitel と Paul J. Deitel による著書、『C言語プログラミング』(原題 C How to Program)の練習問題をひたすら解いていきます。おかしなコードも多々あると思いますが、お気づきの点はご指摘していただけると嬉しいです。 環境 Windows XP SP3 Borland C++ Compiler 5.5 分からないことは? @wiki ご利用ガイド よくある質問 無料で会員登録できるSNS内の@wiki助け合いコミュニティ @wiki更新情報 @wikiへのお問合せフォーム 等をご活用ください @wiki助け合いコミュニティの掲示板スレッド一覧 #atfb_bbs_list その他にもいろいろな機能満載!! @wikiプラグイン @wiki便利ツール @wiki構文 @wikiプラグイン一覧 まとめサイト作成支援ツール total: - today: - yesterday: -
https://w.atwiki.jp/beluga/pages/34.html
BELUGA開発部 BELUGA開発部 Wiki BELUGAプログラマ雑談推薦図書 いつかこちらに移行するかも ハードウェア CPUの創りかた はじめて読む8086 IA-32 インテル® アーキテクチャー・ソフトウェア・デベロッパーズ・マニュアル UNIX UNIXプログラミング環境 プログラミング Lisp入門―システムとプログラミング (コンピュータサイエンス大学講座) もうひとつの Scheme 入門 セキュリティ カッコウはコンピュータに卵を産む 算数 はじめての数論 オイラーの贈物 数学 定本 解析概論 英語 くもんの中学英文法 ロイヤル英文法 エッセイ Masami Hagiya Essays 5つの世界 - Joel on Software ハッカー文化 ハッカーになろう ハッカーズ
https://w.atwiki.jp/nikukyupunipuni/pages/8.html
@wikiにはいくつかの便利なプラグインがあります。 アーカイブ コメント ニュース 動画(Youtube) 編集履歴 関連ブログ これ以外のプラグインについては@wikiガイドをご覧ください = http //atwiki.jp/guide/
https://w.atwiki.jp/tatsuya23/pages/56.html
前のページへ戻る
https://w.atwiki.jp/forns/pages/44.html
今回はABC319の問題3問について解説します。 Bismは大会時は2問まで解けました。 A - Legendary Players 問題文要約 競技者10人の名前と今のレートのデータがもらえるので、名前を言ったらその人のレートを出力してね。 入力・出力例 入力 tourist 出力 3858 このコンテストが開始した時点において、touristさんのアルゴリズム部門のレーティングは3858です。 考えた解法 名前とレートが入った2次元配列を作り、そこからデータを取り出すプログラムを作ります。 S = input() name = [["tourist", 3858], # [[名前1, レート1], [名前2, レート2], [ ... ]] ["ksun48", 3679], ["Benq", 3658], ["Um_nik", 3648], ["apiad", 3638], ["Stonefeang", 3630], ["ecnerwala", 3613], ["mnbvmar", 3555], ["newbiedmy", 3516], ["semiexp", 3481]] for i in range(len(name)) # リストの回数繰り返す 名前が一致するか検索 if S == name[i][0] # もし文字列が今出したものと一致するなら print(name[i][1]) # その人のレートを出すよ break # 検索終わり B - Measure 問題文要約 N = 与えられた整数 i = 0からNまでの整数のいずれか j = 1〜9のNの約数 (1) iがN / jの倍数であるものが存在するとき jのうち最小のものをsiとする。 ※i=0の場合はjは全て当てはまるので、必ずs0=1となる。 (2) 存在しないとき "-"をsiとする。 s0〜sNをつなげた文字列を出力してね。 入力・出力例 入力 12 出力 1-643-2-346-1 解法 iを0から順番に見ていきます。 jは1〜9の中のどれかなので、ループを回してもそこまで処理に時間はかかりません。 ① S / jが割り切れる かつ ② i / (S / j)が割り切れる とき、(1)の処理を行うようにプログラムします。 ただし、この条件だとj=0のとき、Sを0で割るという処理はできませんので、強制的にs0=1とするような処理を行います。 S = int(input()) ans = "" for i in range(S+1) # 0〜Nで順番にiを見ていく if i == 0 # i=0の場合 ans += "1" else count = 0 for j in range(9) if S % (j+1) == 0 and i % (S // (j+1)) == 0 # %、//は割ったときの余り、商を出力したものだよ ans += str(j+1) elif j == 8 ans += "-" print(ans) C - False Hope 問題文要約 この問題はかなり複雑なので、今回は省略します。 入力・出力例 入力 3 1 9 2 5 6 2 7 1 出力 0.666666666666666666666666666667 解法 総当たりの処理を正確に書くことが問われる問題だと思います。 今回は、総当たりで処理をするにあたって必要な、「1〜9の文字を並び替えた全ての通りのリスト」を取得する方法が分からなかったため、解くことができませんでした。 それを行うプログラムは以下の通りです。 permutations(range(9)) こちらのプログラムを用いて、全体のプログラムを書いたのが以下の通りです。 from itertools import permutations masu = [] for i in range(3) # 入力例の場合、masu=[3, 1, 9, 2, 5, 6, 2, 7, 1] masus = list(map(int, input().split())) for j in range(len(masus)) masu.append(masus[j]) # retsuは条件を満たすか調べる列一覧 retsu =[(0,1,2),(3,4,5),(6,7,8),(0,3,6),(1,4,7),(2,5,8),(0,4,8),(2,4,6)] # ordersは「1〜9の文字を並び替えた全ての通りのリスト」 orders = list(permutations(range(9))) ans = 0 for order in orders for a, b, c in retsu count = 0 # breakを2回行うためのカウント for _ in range(3) # a番目とb番目に選ばれたマスに書かれている数字が一緒 a番目よりc番目の方が遅い b番目よりc番目の方が遅い if masu[a]==masu[b] and order[a] order[c] and order[b] order[c] ans += 1 count += 1 break a, b, c = b, c, a if count == 1 break print(1 - (ans / 362880))
https://w.atwiki.jp/neetsdkasu/pages/67.html
スタックマシン pop 直後を値とみなしスタックに入れる push スタックから取り出して捨てる load スタックから取り出した値を変数アドレスとみなし変数の値をスタックに入れる store スタックから2つ値を取り出し、2番目の値を変数アドレスとみなし最初の値を変数に格納する dup スタック末尾の値をコピーしてスタックに入れる swap スタック末尾の値と末尾から2番目の値を入れ替える call 直後をコードアドレスとみなしプログラムポインタをプログラムスタックに積みコードアドレスにプログラムポインタを移動する return プログラムスタックから取り出した値にプログラムポインタを移動する goto 直後をコードアドレスとみなしプログラムポインタを移動する add スタックから2つ値を取り出しその和をスタックに入れる (末尾から2番目+末尾) sub 〃 差 (末尾から2番目-末尾) mul 〃 積 div 〃 商 mod 〃 余り inc スタックの末尾の値を1だけインクリメントする dec スタックの末尾の値を1だけデクリメントする abs スタックから1つ値を取り出して絶対値をスタックに入れる sgn スタックから1つ値を取り出して正なら1、ゼロなら0、負なら-1をスタックに入れる and スタックから2つ値を取り出しその論理積をスタックに入れる or 〃 論理和 xor 〃 排他論理和 not スタックから1つ値を取り出しビット反転してスタックに入れる srl スタックから2つ値を取り出し論理右シフトしてスタックに入れる sll 〃 論理左シフト sra 〃 算術右シフト sla 〃 算術左シフト jze 直後をコードアドレスとみなしスタックの末尾の値がゼロならコードアドレスにプログラムポインタを移動する jnz 〃 ゼロ以外なら jlt 直後をコードアドレスとみなし、スタック末尾から2つの値を比較し末尾から2番目が末尾より小さければプログラムポインタを移動する jle 〃 ゼロ以下ならば jgt 〃 大きければ jge 〃 ゼロ以上ならば
https://w.atwiki.jp/atachi/pages/49.html
WPF時代のグラフィックス ビジュアルオブジェクト カスタムコントロール WPFでの画像の扱い グラフィックス関連のクラス構成 [#i1cf7c34] レンダリング シェイプ ブラシ ブラシの種類 ジオメトリ ジオメトリの描画 [#l2dbcfd6] レンダリング UIのレンダリング ビットマップのレンダリング WPF時代のグラフィックス WPFではボタンやツリービューなどのコントロールの外観を描画する方法に新しい方式を取り入れています。 これまでは、グラフィックスとしてピクセルの描画を行っていましたが、WPFではこれらがパスなどを用いたドローイング方式となりました。 ビジュアルオブジェクト WPFでは描画する領域をビジュアルオブジェクトと呼び、ビジュアルオブジェクトに対し描画関数により図形の描画を行います。 すべてのコントロールは1つから複数のビジュアルオブジェクトの組み合わせで描画されており、コントロール自身もビジュアルオブジェクトです。 ビジュアルオブジェクトは親子関係を構築することができます。 コントロール自身もビジュアルオブジェクトなので、ボタンの文字が表示される場所に画像を表示したり、ツリービューコントロールを表示することもできます。 予め用意されているWPFで使用できるコントロールはFrameworkElementのサブクラスです。 カスタムコントロール 自分で独自のコントロールを作成する場合、ソースコードで定義するにはFrameworkElementのサブクラスとして作成します。 WPFでの画像の扱い WPFではBitmapSourceのサブクラスを主に扱います。このクラスはWPFのコントロールやスタイルと共に使いやすいように様々なプロパティやインターフェースを持ったものです。 GDI+ではImageクラスを主に扱います。Imageクラスは画像そのものをデータとしてクラスにカプセル化したものでこのクラス自体は画像への操作などは行うことができません。 グラフィックス関連のクラス構成 Object └ DispathcerObject └ DependencyObject └ Freezable └ Animatable └ ImageSource ├ BitmapSource │ ├ BitmapFrame MSDN │ └ BitmapImage └ DrawingImage レンダリング DrawingVisualは図形などを描画するためのコンテキストや描画した図形情報を格納しています。 実際にDrawingVisualに図形を描画するにはDrawingVisualからDrawingContextを取得します。 DrawingVisual dv = new DrawingVisual(); using(DrawingContext dc = dv.RenderOpen()){ dc.DrawEllipse(Brushes.Red,null,new Point(0,0), 1,1); } シェイプ System.Windows.Shapes名前空間に属した形を描画するためのクラス群です。 シェイプはベクターグラフィックスなので、解像度の変更にもスムーズに適切な解像度で描画されます。 Rectangle 矩形 Ellipse 楕円 Line 直線 Path 曲線 Polygon 多角形 Polyline 閉じていない多角形 PolygonとPolylineは似ていますが、複数の直線で構成された図形がとじているか閉じていないかで異なります。 また、Pathは連続した直線・曲線となります。 ブラシ // 正方形の矩形 Rectangle rect = new Rectangle(); rect.Width = 75; rect.Height = 75; // 矩形を単色で塗りつぶす SolidColorBrush myBrush = new SolidColorBrush(Colors.Red); rect.Fill = myBrush; ブラシの種類 SolidColorBrush 単色塗りつぶし LinearGradientBrush 線形グラデーション塗りつぶし RadialGradientBrush 円形グラデーション塗りつぶし ImageBrush 画像による塗りつぶし(拡大・縮小・タイル) DrawingBrush VisualBrush ジオメトリ ジオメトリはドロー系ソフトの「パス」と考えるとわかりやすい。(Adobe Illustratorなど) ジオメトリによって描画した図形は、拡大・縮小を行う際にその都度、座標を変えて再描画する必要がない(自動的に計算される) また、イージングなどのアニメーションが可能で、始点と終点の座標を与えれば中割の描画は自動的に計算され表示される。 このような特徴を持ったジオメトリは、Geometry クラスを基点としたクラスツリーをとる。 図形の描画に関しては、Shapeと同じものが用意されている。 // Create a figure that describes a // line from (10,20) to (100,130). PathFigure myPathFigure = new PathFigure(); myPathFigure.StartPoint = new Point(10,20); myPathFigure.Segments.Add( new LineSegment(new Point(100,130), true /* IsStroked */ )); /// Create a PathGeometry to contain the figure. PathGeometry myPathGeometry = new PathGeometry(); myPathGeometry.Figures.Add(myPathFigure); // Display the PathGeometry. Path myPath = new Path(); myPath.Stroke = Brushes.Black; myPath.StrokeThickness = 1; myPath.Data = myPathGeometry; canvas1.Children.Add(myPath); ジオメトリの描画 ジオメトリをVisualObjectに描画するにはUIElementクラスである必要があります。 UIElementのサブクラスであるPathクラスを使用してジオメトリをCanvasに描画するのが一般的です。 // Display the PathGeometry. Path myPath = new Path(); myPath.Stroke = Brushes.Black; myPath.StrokeThickness = 1; myPath.Data = myPathGeometry; // ジオメトリを設定 canvas1.Children.Add(myPath); // XAMLなどで定義したCanvas レンダリング 画像のレンダリングには、作成する画像の目的によって2種類の方法があります。 1つ目がユーザーインターフェース用の画像の作成です。ユーザーインターフェースではどのような環境でも表示される事が望まれるため、表示環境(DPIなど)に影響されにくいような描画システムを必要とします。 2つ目がビットマップなどの画像を作成するためのレンダリングです。 こちらは主にマルチメディアのための画像です。 それぞれレンダリングするためのクラスが異なります。 前者は、System.Windows.Media名前空間に属しています。 後者は、System.Drawing名前空間に属しており、GDI+とよばれる描画ライブラリのラッパーです。 UIのレンダリング ボタンなどのフォームコントロールを表示するための画像はDrawingVisualクラスを使用します。 このクラスは画像作成のためのコンテキストを持っており、プログラムによって図形を描画した後、ビットマップとして画像を取得できます。 このコンテキストは画像や図形を描画するためのメソッドを備えているため、簡単に図形を作成することができます。 出来上がるのは1枚のビットマップであるため、マウスイベントなどの処理はできません。 DrawingVisual drawingVisual = new DrawingVisual(); // 描画用のコンテキストを取得 DrawingContext drawingContext = drawingVisual.RenderOpen(); // 矩形を描画 Rect rect = new Rect(new System.Windows.Point(160, 100), new System.Windows.Size(320, 80)); drawingContext.DrawRectangle(System.Windows.Media.Brushes.LightBlue, (System.Windows.Media.Pen)null, rect); // コンテキストを閉じる drawingContext.Close(); 次のようにすればビットマップとして描画した画像を取り出せます。 RenderTargetBitmap bmp = new RenderTargetBitmap(180, 180, 120, 96, PixelFormats.Pbgra32); bmp.Render(drawingVisual); ビットマップのレンダリング Bitmap myBitmap = new Bitmap(100, 100); // レンダリングするためのキャンバスを作成します。 // この例では「100×100」の画像を作成します。 Graphics g = Graphics.FromImage(myBitmap); // 描画用コンテキストの作成
https://w.atwiki.jp/ktakeda/pages/11.html
インスタグラムプラグイン 人気の画像共有サービス、Instagram(インスタグラム)の画像をアットウィキに貼れるプラグインです。 #ig_user(ユーザー名) と記載することで、特定ユーザーのInstagramのフィードを表示することができます。 例)@dogoftheday #ig_user #ig_tags(タグ名) と記載することで、特定タグのInstagramのフィードを表示することができます。 #dogofthedayjp タグ #ig_tag #ig_popular と記載することで、Instagramのpopularフィードを表示することができます。 詳しい使い方は以下のページを参考にしてください! =>http //www1.atwiki.jp/guide/pages/935.html
https://w.atwiki.jp/nikukyupunipuni/pages/6.html
アーカイブ @wikiのwikiモードでは #archive_log() と入力することで、特定のウェブページを保存しておくことができます。 詳しくはこちらをご覧ください。 =>http //atwiki.jp/guide/25_171_ja.html たとえば、#archive_log()と入力すると以下のように表示されます。 保存したいURLとサイト名を入力して"アーカイブログ"をクリックしてみよう サイト名 URL